||This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. (August 2012) (Learn how and when to remove this template message)|
|This article needs additional citations for verification. (August 2012) (Learn how and when to remove this template message)|
The ZEBRA (Zeer Eenvoudige Binaire Reken Automaat translated Very Simple Binary Automatic Calculator) was one of the first computers to be designed in the Netherlands, (the first one was the "ARRA") and one of the first Dutch computers to be commercially available. It was designed by Willem van der Poel of the Netherlands Post, Telegraph and Telephone, and first delivered in 1958. The production run consisted of fifty-five machines, manufactured and marketed by the British company Standard Telephones and Cables, Ltd.
The ZEBRA was a binary, two-address machine with a 33-bit word length. Storage was provided by a magnetic drum memory holding 8K words; accumulators were also implemented as recirculating drum tracks in a manner similar to that used in the Bendix G-15. Peripherals included paper tape reader and punch, and teleprinter.
The ZEBRA instruction word consists of a 13-bit drum address, a five-bit register (or I/O) address, and a 15-bit operation field. Each bit of the operation field had a distinct meaning and could be used in nearly any combination, leading to many elegant tricks that today might be considered the domain of microprogramming. Some bits made an instruction conditional on the accumulator state, as with the Zuse Z22 or Electrologica X1. Multiplication, division, square root, as well as all floating-point operations, were performed by subroutines, using the underlying serial computer ALU primitives add, subtract, shift right, shift left, and increment. Programming aids included the Normal Code (assembler), trace utility, a floating point interpretive system, the Simple Code, the Matrix Interpretive Scheme, and an Algol compiler.
Since a magnetic drum does not support random access, some time is lost waiting for an instruction or piece of data become available. In a poorly written program, the average wait time could be half the drum rotation time, but there were ways to reduce this. A notable feature of the ZEBRA was a meter that measured how much of the machine's time was spent in non-wait states; this was called the "efficiency meter." When running the floating-point interpretive system, the efficiency meter tended to show around 50%, but if prospective customers were visiting, a more efficient program could be loaded for demonstration purposes.