
The GEC 4000 was a series of
16/
32-bit
In computer architecture, 32-bit computing refers to computer systems with a processor, memory, and other major system components that operate on data in a maximum of 32- bit units. Compared to smaller bit widths, 32-bit computers can perform la ...
minicomputer
A minicomputer, or colloquially mini, is a type of general-purpose computer mostly developed from the mid-1960s, built significantly smaller and sold at a much lower price than mainframe computers . By 21st century-standards however, a mini is ...
s produced by
GEC Computers Ltd in the United Kingdom during the 1970s, 1980s and early 1990s.
History
GEC Computers was formed in 1968 as a business unit of the
GEC conglomerate. It inherited from
Elliott Automation
Elliott Brothers (London) Ltd was an early computer company of the 1950s and 1960s in the United Kingdom. It traced its descent from a firm of instrument makers founded by William Elliott in London around 1804. The research laboratories were o ...
the ageing Elliott 900 series, and needed to develop a new range of systems. Three ranges were identified, known internally as Alpha, Beta, and Gamma. Alpha appeared first and became the
GEC 2050 8-bit minicomputer. Beta followed and became the GEC 4080. Gamma was never developed, so a few of its enhanced features were consequently pulled back into the 4080. The principal designer of the GEC 4080 was Dr. Michael Melliar-Smith and the principal designer of the 4060 and 4090 was Peter Mackley.
The 4000 series systems were developed and manufactured in the UK at GEC Computers'
Borehamwood
Borehamwood (, historically also Boreham Wood) is a town in southern Hertfordshire, England, from Charing Cross. Borehamwood has a population of 36,322, and is within the London commuter belt. The town's film and TV studios are commonly know ...
offices in Elstree Way. Development and manufacture transferred to the company's new factories in Woodside Estate,
Dunstable
Dunstable ( ) is a market town and civil parish in Bedfordshire, England, east of the Chiltern Hills, north of London. There are several steep chalk escarpments, most noticeable when approaching Dunstable from the north. Dunstable is the fou ...
in the late 1970s. In 1979, GEC Computers was awarded the
Queen's Award for Technical Achievement for the development of the 4000 series, particularly Nucleus. By 1991, the number of systems manufactured was falling off, so manufacture was transferred to
GPT's Beeston, Nottinghamshire
Beeston () is a town in the Borough of Broxtowe, Nottinghamshire, England, it is 3 miles south-west of Nottingham. To its north-east is the University of Nottingham's main campus, Campuses of the University of Nottingham#University Park Campus, ...
factory and development returned to Borehamwood. The last systems were manufactured around 1995.
There were still a few GEC 4220 systems operating in 2018 with maintenance provided by
Telent
Telent Technology Services Limited is a British radio, telecommunications, and digital infrastructure systems installation and services provision company. The name is used from 2006 for those parts of the United Kingdom and German services busin ...
, and some GEC 4310 were operating until 2013.
London Underground
The London Underground (also known simply as the Underground or as the Tube) is a rapid transit system serving Greater London and some parts of the adjacent home counties of Buckinghamshire, Essex and Hertfordshire in England.
The Undergro ...
continued to use GEC 4190 systems through 2021, though has since decommissioned at least one system for display at the
Centre for Computing History
The Centre for Computing History is a computer museum in Cambridge, England, established to create a permanent public exhibition telling the story of the Information Age.
Overview
The museum acts as a repository for vintage computers and rel ...
in
Cambridge
Cambridge ( ) is a List of cities in the United Kingdom, city and non-metropolitan district in the county of Cambridgeshire, England. It is the county town of Cambridgeshire and is located on the River Cam, north of London. As of the 2021 Unit ...
.
Nucleus
The GEC 4000 series
hardware and
firmware
In computing
Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, h ...
included a pioneering facility known as Nucleus. Nucleus implements a number of features which are more usually implemented within an
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
kernel
Kernel may refer to:
Computing
* Kernel (operating system), the central component of most operating systems
* Kernel (image processing), a matrix used for image convolution
* Compute kernel, in GPGPU programming
* Kernel method, in machine learnin ...
, and consequently operating systems running on GEC 4000 series systems do not need to directly provide these features themselves. Nucleus firmware cannot be reprogrammed by any code running on the system, and this made the systems particularly attractive to a number of security applications.
Nucleus performs:
*
process
A process is a series or set of activities that interact to produce a result; it may occur once-only or be recurrent or periodic.
Things called a process include:
Business and management
* Business process, activities that produce a specific s ...
scheduling
*
context switching
In computing, a context switch is the process of storing the state of a process or thread, so that it can be restored and resume execution at a later point, and then restoring a different, previously saved, state. This allows multiple processes ...
* efficient
semaphore
Semaphore (; ) is the use of an apparatus to create a visual signal transmitted over distance. A semaphore can be performed with devices including: fire, lights, flags, sunlight, and moving arms. Semaphores can be used for telegraphy when arra ...
s
* asynchronous
message passing
In computer science, message passing is a technique for invoking behavior (i.e., running a program) on a computer. The invoking program sends a message to a process (which may be an actor or object) and relies on that process and its supporting ...
* memory segmentation and protection
* error handling
*
I/O directly by processes, and routing of
interrupts back to processes
There is no provision for running any supervisor/privileged/kernel mode code on the 4000 systems—all operating system code runs as processes. Hence,
device drivers
In the context of an operating system, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton. A driver provides a software interface to hardware devices, enabli ...
,
file system code, and other features which are often found within operating system kernels must be run in processes on the 4000 systems. Inherent in this is that they are all running in their own address spaces, protected from the actions of each other, just as all processes are.
Nucleus is configured by a set of system tables, and processes which have a need to modify the operation of nucleus are given access to the relevant system tables. This would be the case for processes which directly change the state of other processes, processes which allocate and delete memory segments, processes which can change the routing of messages between other processes or change the mapping of I/O devices to processes, etc. Normally system table access is limited to relatively few trusted processes, and other processes which need to perform operations such as loading processes, allocating memory, etc. will pass a message to the relevant trusted process which it will vet before performing the action and replying.
Instruction set
The 4000 series has a
CISC instruction set
In computer science, an instruction set architecture (ISA) is an abstract model that generally defines how software controls the CPU in a computer or a family of computers. A device or program that executes instructions described by that ISA, s ...
. It has
8-bit
In computer architecture, 8-bit integers or other data units are those that are 8 bits wide (1 octet). Also, 8-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers or data bu ...
bytes
The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer and for this reason it is the smallest addressable un ...
,
big-endian
'' Jonathan_Swift.html" ;"title="Gulliver's Travels'' by Jonathan Swift">Gulliver's Travels'' by Jonathan Swift, the novel from which the term was coined
In computing, endianness is the order in which bytes within a word (data type), word of d ...
, byte-
addressable memory,
two's complement
Two's complement is the most common method of representing signed (positive, negative, and zero) integers on computers, and more generally, fixed point binary values. Two's complement uses the binary digit with the ''greatest'' value as the ''s ...
arithmetic, and
base-16 excess-64 floating point format (same as
IBM System/360
The IBM System/360 (S/360) is a family of mainframe computer systems announced by IBM on April 7, 1964, and delivered between 1965 and 1978. System/360 was the first family of computers designed to cover both commercial and scientific applicati ...
).
The model numbers below 4090 are 16-bit processors, and model numbers from 4090 upwards are mixed 16-bit and 32-bit. This relates to pointer sizes available to programs. All systems support 16-bit pointers, which is known as CST (Current Segment Table) addressing. The 32-bit systems also support 32-bit pointers, known as PAS (Paged Address Space) addressing. Each process has a PAST (Program Accessible Segment Table) which lists which of the system's memory segments the program is permitted to access. CST addressing allows four of the PAST entries to be mapped at addresses 0, 16KiB, 32KiB, and 48KiB, giving the 16-bit/64KiB address space. Programs which use more than 64KiB of memory must explicitly map the PAST entries they require at any moment into their 4 CST entries, although Nucleus will automatically map different code segments into the CSTs. PAS addressing allows programs to view their address space as a flat 32-bit address space, with successive PAST entries appearing every 16KiB, and Nucleus performing the PAST entry segment mapping automatically. The 32-bit systems support mixing of CST and PAS addressing in the same process. All instructions are 16 bits wide, except for some PAS addressing instructions which are 32 bits. Instructions can only be run from CST address space.
The 32-bit A register is the main accumulator register. There is a 32-bit B register too, which is most commonly used together with the A register as a 64-bit BA register for double-precision floating point operations. A 16-bit X register is used mainly for array indexing, and two 16-bit Y and Z registers are used as 16-bit pointers. A 16-bit L register points to function local data, and a G register always contains zero which can be used as a 16-bit global pointer, and also an 8-bit, 16-bit, or 32-bit zero value. The 16-bit S (sequence) register points to the next instruction to be obeyed. The 8-bit EC register contains condition codes bits. (Some of this is illustrated in the much simpler instruction set of the
GEC 2050.) A read-only 'keys' register allows programs to read the value set on the front panel toggle switches by the operations staff. No 32-bit PAS pointer register exists—32-bit PAS pointers reside in memory in the 16-bit CST address space, and are accessed by using a 16-bit pointer. There is no instruction set support for a
stack
Stack may refer to:
Places
* Stack Island, an island game reserve in Bass Strait, south-eastern Australia, in Tasmania’s Hunter Island Group
* Blue Stack Mountains, in Co. Donegal, Ireland
People
* Stack (surname) (including a list of people ...
. There are a number of registers inaccessible to programs which are used by Nucleus, such as the hardware segment registers which point to the running process's four CSTs, master segment and PAS segments, and the system tables.
The instruction set contains instructions which operate register-register, store-register, register-store, and store-store. There are a set of string manipulation instructions which operate on variable lengths of store, copying, comparing, or scanning for a pattern. There are a number of Nucleus instructions for tasks such as sending a message to another process or a peripheral device, receiving a message or interrupt, changing a CST entry to point to a different segment which is accessible to the process, etc.
The 4080 has a two-stage
instruction pipeline
In computer engineering, instruction pipelining is a technique for implementing instruction-level parallelism within a single processor. Pipelining attempts to keep every part of the processor busy with some instruction by dividing incoming Mac ...
. This becomes a four-stage pipeline for the 4220, the highest-performing system in the series. The entry-level 415x and 4x6x systems have only a single-stage pipeline.
The normal operating mode of the CPU is called ''Full Nucleus''. All systems also support a limited mode of operation called ''Basic Test''. In Basic Test mode, Nucleus is disabled, I/O is performed differently, and only a single program can run, restricted to the bottom 64KiB of store, but all other non-nucleus and non-PAS instructions operate normally. This mode is used very early during booting to set up the system tables required by Nucleus, before obeying a ''Switch Full Nucleus'' instruction. Once the system has switched to Full Nucleus, it cannot return to Basic Test mode without operator intervention at the front panel, in effect killing any operating system which was running. Basic Test mode is also used to run certain test software (hence the name).
Input/output
The 4000 I/O design is based around a number of
Input/Output Processors known as ''IOPs'', each of which interfaces between the store and a set of I/O controllers. The IOPs are controlled by the Nucleus function in the CPU, but once an I/O event is triggered, they operate autonomously without interaction with the CPU until the I/O completes. The ''Normal Interface'' IOPs can each support up to 255 or 256 simultaneous I/O operations, each on a separate ''Way''. The I/O controllers on each IOP would each occupy one or more Ways, depending on how many simultaneous I/O operations they need to handle. The IOP polices each Way's access to main store, allowing only access to successive memory locations defined for the I/O operation that Way is currently performing. The earlier IOPs performed 8-bit and 16-bit wide store accesses, with a burst mode for doing up to 8 transfers together for higher throughput I/O controllers. The later IOPs added 32-bit wide store accesses.
All systems have at least one IOP. On the 4080, this first IOP was called the Basic Multiplexer Channel, or BMC, and the 4080 front panel provides for controlling both the CPU and the BMC. The entry level 415x and 4x6x systems have their first IOP (Integral Multiplexer Channel, or IMC) integrated into the Nucleus firmware, and thus I/O operations on the IMC did have some impact on CPU performance, although the 4x6x systems could have external IOPs added. The 4000 series Nucleus I/O instructions and system tables allow for up to 8 IOPs, although most of the models in the 4000 series range had some type of hardware limitation which reduced this. The 408x systems had 4-ported store, with the CPU and first IOP sharing one of these, and up to three additional IOPs connected to the remaining store ports. (Early documentation shows these additional store ports were also designed to connect additional CPUs, although this was not a configuration which was ever sold using 4080 processors.) Later models had more store ports, depending on how many store port boards could be fitted into the system. The 4190 could support the full complement of eight IOPs, and the 4190D supported eight IOPs with two CPUs.
Some commonly used I/O Controllers are the
interval timer,
system console
A computer terminal is an electronic or electromechanical computer hardware, hardware device that can be used for entering data into, and transcribing data from, a computer or a computing system. Most early computers only had a front panel to ...
controller,
punched tape
file:PaperTapes-5and8Hole.jpg, Five- and eight-hole wide punched paper tape
file:Harwell-dekatron-witch-10.jpg, Paper tape reader on the Harwell computer with a small piece of five-hole tape connected in a circle – creating a physical program ...
reader and punch controllers,
line printer
A line printer Printer (computing), prints one entire line of text before advancing to another line. Most early line printers were
printer (computing)#Impact printers, impact printers.
Line printers are mostly associated with unit record eq ...
controller (all these use a single Way), a number of
SMD (and earlier
disk bus interface) disk controllers for controlling up to four drives (all using two Ways),
Pertec PPC
magnetic tape
Magnetic tape is a medium for magnetic storage made of a thin, magnetizable coating on a long, narrow strip of plastic film. It was developed in Germany in 1928, based on the earlier magnetic wire recording from Denmark. Devices that use magnetic ...
controllers for up to four " tape drives, and a number of multi-ported
synchronous
Synchronization is the coordination of events to operate a system in unison. For example, the conductor of an orchestra keeps the orchestra synchronized or ''in time''. Systems that operate with all parts in synchrony are said to be synchrono ...
and
asynchronous
Asynchrony is any dynamic far from synchronization. If and as parts of an asynchronous system become more synchronized, those parts or even the whole system can be said to be in sync.
Asynchrony or asynchronous may refer to:
Electronics and com ...
serial communication
In telecommunication and data transmission, serial communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus. This is in contrast to parallel communication, where several bits a ...
controllers (using between 4 and 32 Ways). A digital I/O board (using four Ways) was commonly used for direct process control interfacing, and for providing a fast parallel link between systems. A
CAMAC crate controller was also available (again, used for process control interfacing). The Normal Interface bus which these controllers plug into is a published interface, and many customers also built their own controllers for their own specific process control requirements. The earlier GEC 2050 minicomputer used an 8-bit version of the Normal Interface, and most I/O Controllers could be used on both ranges of systems.
All the IOPs designed and built through the 1970s provided the same Normal Interface bus for I/O Controllers, and the I/O controllers could generally be used in any of them. In the 1980s, some more specialised IOPs were designed. A Direct Memory Access Director (DMAD) IOP allowed for a new type of I/O controller which had more freedom to access main memory, and allowed the design of more intelligent communications controllers. A
SCSI
Small Computer System Interface (SCSI, ) is a set of standards for physically connecting and transferring data between computers and peripheral devices, best known for its use with storage devices such as hard disk drives. SCSI was introduced ...
IOP generated a SCSI bus for attaching more modern disks, and also included an integrated Interval Timer, system console controller, and Calendar Clock so that an additional Normal Interface IOP and separate controllers was not required to support just these functions.
Customers
Users of GEC 4000 series systems included many British university physics and engineering departments, the central computing service of
University College London
University College London (Trade name, branded as UCL) is a Public university, public research university in London, England. It is a Member institutions of the University of London, member institution of the Federal university, federal Uni ...
(Euclid) and
Keele University
Keele University is a Public university#United Kingdom, public research university in Keele, approximately from Newcastle-under-Lyme, Staffordshire, England. Founded in 1949 as the University College of North Staffordshire, it was granted uni ...
, the
JANET
Janet may refer to:
Names
* Janet (given name)
Surname
* Charles Janet (1849–1932), French engineer, inventor and biologist, known for the Left Step periodic table
* Jules Janet (1861–1945), French psychologist and psychotherapist
* Maur ...
academic/research network
X.25
X.25 is an ITU-T standard protocol suite for Packet switched network, packet-switched data communication in wide area network, wide area networks (WAN). It was originally defined by the CCITT, International Telegraph and Telephone Consultative Co ...
switching backbone,
Rutherford-Appleton Laboratory,
Daresbury Laboratory
Daresbury Laboratory is a scientific research laboratory based at Sci-Tech Daresbury campus near Daresbury in Halton, Cheshire, England. The laboratory began operations in 1962 and was officially opened on 16 June 1967 as the Daresbury Nuclea ...
,
Harwell Laboratory,
NERC,
Met Office
The Met Office, until November 2000 officially the Meteorological Office, is the United Kingdom's national weather and climate service. It is an executive agency and trading fund of the Department for Science, Innovation and Technology and ...
,
CERN
The European Organization for Nuclear Research, known as CERN (; ; ), is an intergovernmental organization that operates the largest particle physics laboratory in the world. Established in 1954, it is based in Meyrin, western suburb of Gene ...
,
ICI,
British Telecom
BT Group plc (formerly British Telecom) is a British Multinational corporation, multinational telecommunications holding company headquartered in London, England. It has operations in around 180 countries and is the largest provider of fixed-li ...
,
SIP (Italian
telco), and
Plessey
The Plessey Company plc was a British electronics, defence and telecommunications company. It originated in 1917, growing and diversifying into electronics. It expanded after World War II by acquisition of companies and formed overseas compani ...
.
British Steel Corporation
British may refer to:
Peoples, culture, and language
* British people, nationals or natives of the United Kingdom, British Overseas Territories and Crown Dependencies.
* British national identity, the characteristics of British people and cultur ...
and
BHP Steel used them for real-time control of rolling steel mills,
British Rail
British Railways (BR), which from 1965 traded as British Rail, was a state-owned company that operated most rail transport in Great Britain from 1948 to 1997. Originally a trading brand of the Railway Executive of the British Transport Comm ...
and
London Underground
The London Underground (also known simply as the Underground or as the Tube) is a rapid transit system serving Greater London and some parts of the adjacent home counties of Buckinghamshire, Essex and Hertfordshire in England.
The Undergro ...
for real-time train scheduling,
London Fire Brigade
The London Fire Brigade (LFB) is the Fire department, fire and rescue service for London, the capital of the United Kingdom. It was formed by the Metropolitan Fire Brigade Act 1865 (28 & 29 Vict. c. 90), under the leadership of superintendent ...
and Durham Fire Brigade for command and control systems. The computers controlled most of the world's national
Videotex
Videotex (or interactive videotex) was one of the earliest implementations of an end-user information system. From the late 1970s to early 2010s, it was used to deliver information (usually pages of text) to a user in computer-like format, typi ...
systems, including the
Prestel
Prestel was the Brand#Brand names and trademark, brand name of a videotex service launched in the UK in 1979 by BT Group#Post Office Telecommunications, Post Office Telecommunications, a division of the British Post Office Limited#History, Po ...
viewdata
Viewdata is a Videotex implementation. It is a type of information retrieval service in which a subscriber can access a remote database via a common carrier channel, request data and receive requested data on a video display over a separate ...
service.
At the Rutherford-Appleton Laboratory a GEC 4000 system was used to control the synchrotron and injectors used for the
ISIS
Isis was a major goddess in ancient Egyptian religion whose worship spread throughout the Greco-Roman world. Isis was first mentioned in the Old Kingdom () as one of the main characters of the Osiris myth, in which she resurrects her sla ...
neutron
The neutron is a subatomic particle, symbol or , that has no electric charge, and a mass slightly greater than that of a proton. The Discovery of the neutron, neutron was discovered by James Chadwick in 1932, leading to the discovery of nucle ...
spallation source until 1998.
A GEC 4080M was used as the central processor for the radar system of the ill-fated
Nimrod AEW.3 airborne early warning aircraft.
The
Central Electricity Generating Board
The Central Electricity Generating Board (CEGB) was responsible for electricity generation, transmission and bulk sales in England and Wales from 1958 until privatisation of the electricity industry in the 1990s.
It was established on 1 Januar ...
used GEC 4080 processors at three of their Grid Control Centres. Known as GI74, they were used to collect data from substations and display this on the wall diagrams and tabular VDUs.
Models
A number of variants of the GEC 4000 processor were produced, including (in approximate chronological order):
* 4080: original 1973 model with 64–256 KiB of
core memory
Core or cores may refer to:
Science and technology
* Core (anatomy), everything except the appendages
* Core (laboratory), a highly specialized shared research resource
* Core (manufacturing), used in casting and molding
* Core (optical fiber), ...
* 4082: 4080 with up to 1 MiB of memory
* 4070: entry-level model without memory interleaving
* 4085: 4082 with
semiconductor
A semiconductor is a material with electrical conductivity between that of a conductor and an insulator. Its conductivity can be modified by adding impurities (" doping") to its crystal structure. When two regions with different doping level ...
memory
* 4060: entry-level model based on
AMD
Advanced Micro Devices, Inc. (AMD) is an American multinational corporation and technology company headquartered in Santa Clara, California and maintains significant operations in Austin, Texas. AMD is a hardware and fabless company that de ...
Am2900 bit-slice
Bit slicing is a technique for constructing a processor from modules of processors of smaller bit width, for the purpose of increasing the word length; in theory to make an arbitrary ''n''-bit central processing unit (CPU). Each of these c ...
processors
* 4062/4065: 4060 supporting up to 1 MiB memory
* 4080M: compact ruggedised 4080 for military applications
* 4090: Am2900-based with 32-bit addressing extensions and up to 4 MiB of memory
* 4190: revised 4090 with up to 16 MiB memory
* 4180: cheaper, slower version of the 4190 (no memory cache, no fast multiply unit)
* 4060M: compact ruggedised 4060 for military applications
* 4160: 4065 with the 4090 32-bit addressing extensions
* 4150: desktop 4160
* 4162: 4160 with DMAD IOP(s) for high speed communications controllers
* 4195: compact 4190
* 4185: cheaper, slower version of the 4195 (no memory cache, no fast multiply unit)
* 4151:
rackmount
A 19-inch rack is a standardized frame or enclosure for mounting multiple electronic equipment modules. Each module has a front panel that is wide. The 19 inch dimension includes the edges or ''ears'' that protrude from each side of the ...
4150
* 4190D: dual-processor 4190
* 4193: 4195 with
SCSI
Small Computer System Interface (SCSI, ) is a set of standards for physically connecting and transferring data between computers and peripheral devices, best known for its use with storage devices such as hard disk drives. SCSI was introduced ...
IOP replacing the default Normal Interface IOP
* 4220: Reimplement 4190 using
gate array
A gate array is an approach to the design and manufacture of application-specific integrated circuits (ASICs) using a semiconductor device fabrication, prefabricated chip with components that are later interconnected into logic devices (e.g. NAN ...
processor technology
* 4310:
Motorola 88100
The MC88100 is a microprocessor developed by Motorola that implemented 88000 RISC instruction set architecture. Announced in 1988, the MC88100 was the first 88000 implementation. It was succeeded by the MC88110 in the early 1990s.
The microproce ...
MVME187-based system emulating a GEC 4220
Software
Several operating systems were available for the GEC 4000 series, including:
* COS: Core Operating System, for diskless
real-time systems
* DOS: Disk Operating System, for real-time systems, providing a
filesystem and swapping facilities
*
OS4000
OS4000 is a proprietary operating system introduced by GEC Computers Limited in 1977 as the successor to GEC DOS, for its range of GEC 4000 series 16-bit, and later 32-bit, minicomputers. OS4000 was developed through to late 1990s, and has bee ...
: a
multi-user
Multi-user software is computer software that allows access by multiple users of a computer. Time-sharing systems are multi-user systems. Most batch processing systems for mainframe computers may also be considered "multi-user", to avoid leavi ...
system supporting batch and interactive use, and transaction processing
* SCP-2: Secure Operating System (
DOD A1/B3)
multilevel security
Multilevel security or multiple levels of security (MLS) is the application of a computer system to process information with incompatible classifications (i.e., at different security levels), permit access by users with different security clearan ...
Programming languages available included
Babbage (a
high-level assembly language),
FORTRAN IV,
CORAL 66
Corals are colonial marine invertebrates within the subphylum Anthozoa of the phylum Cnidaria. They typically form compact colonies of many identical individual polyps. Coral species include the important reef builders that inhabit tropical o ...
,
ALGOL
ALGOL (; short for "Algorithmic Language") is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the ...
,
APL and
BASIC
Basic or BASIC may refer to:
Science and technology
* BASIC, a computer programming language
* Basic (chemistry), having the properties of a base
* Basic access authentication, in HTTP
Entertainment
* Basic (film), ''Basic'' (film), a 2003 film
...
.
Babbage
Babbage is the
high level assembly language for the GEC 4000 series
minicomputer
A minicomputer, or colloquially mini, is a type of general-purpose computer mostly developed from the mid-1960s, built significantly smaller and sold at a much lower price than mainframe computers . By 21st century-standards however, a mini is ...
s. It appeared in 1971.
(xiv+294+4 pages) It was named after
Charles Babbage
Charles Babbage (; 26 December 1791 – 18 October 1871) was an English polymath. A mathematician, philosopher, inventor and mechanical engineer, Babbage originated the concept of a digital programmable computer.
Babbage is considered ...
, an
English computing pioneer.
Example
This code prints the
factorial
In mathematics, the factorial of a non-negative denoted is the Product (mathematics), product of all positive integers less than or equal The factorial also equals the product of n with the next smaller factorial:
\begin
n! &= n \times ...
for numbers from 1 to 9.
PROCESS CHAPTER FACTORIAL
ENTRY LABEL ENTRYPOINT
LITERAL TO = 4 // Assume using the default proforma
EXTERNAL ROUTINE
OPEN,
PUT,
CLOSE,
TOCHAR
VECTOR ,19OF BYTE ANSWER = "factorial x = xxxxxx"
HALF COUNT
HALF VALUE
FULL RESULT
//******************************************************************************
ROUTINE FACT(VALUE)
// return factorial of RA.
VALUE => RESULT
WHILE DECREMENT VALUE GT //0// DO
<<
RESULT * VALUE => RESULT
>>
RETURN(RESULT)
END
//******************************************************************************
ENTRYPOINT:
OPEN(TO, 1)
// Print factorials for numbers 1 through 9
1 => RA
REPEAT
<<
RA => COUNT
FACT(RA) => RA
TOCHAR(RA, 7, ANSWER + 13)
TOCHAR(COUNT, 2, ANSWER + 9)
PUT(TO, 20, ANSWER)
COUNT + 1 => RA
>>
WHILE RA LT 10
CLOSE(TO)
STOP(0)
END
//******************************************************************************
See also
*
GEC Series 63
*
GEC 2050 8-bit minicomputer
References
External links
25 years of GEC 4000 series(archived)
"GEC 4000 Computer", ''The Centre for Computing History – Computer Museum''
{{DEFAULTSORT:Gec 4000 Series
Minicomputers
GEC Computers
Computers using bit-slice designs
16-bit computers
32-bit computers
Computers designed in the United Kingdom