484:
48:
20:
645:
703:
The IBM 704 was much more reliable than its predecessor, the IBM 701, which had a mean time between failure of around 30 minutes. Being a vacuum-tube machine, however, the IBM 704 had very poor reliability by today's standards. On average, the machine failed around every 8 hours,
32:
675:
The 704 itself came with a control console having 36 assorted control switches or buttons and 36 data-input switches, one for each bit in a register. The control console essentially allows only setting the binary values of the registers with switches and seeing the binary state of the registers
676:
displayed in the pattern of many small neon lamps, appearing much like modern LEDs. For human interaction with the computer, programs would be entered on punched cards initially rather than at the console, and human-readable output would be directed to the printer.
600:
The instruction set implicitly subdivides the data format into the same fields as type A instructions: prefix, decrement, tag and address. Instructions exist to modify each of these fields in a data word without changing the remainder of the word, though the
554:
field from the contents of the index registers. The implementation requires that the second two bits of the instruction code be non-zero, giving a total of six possible type A instructions. One (STR, instruction code binary 101) was not implemented until the
691:
persistence time of 20 seconds for human viewing, together with a 7-inch display receiving the same signal as the larger display but with a fast-decaying phosphor designed to be photographed with an attached camera.
499:. The contents of the index registers are subtracted from the base address, so the index registers are also called "decrement registers". All three index registers can participate in an instruction: the 3-bit
519:. The IBM 7094, introduced in 1962, increased the number of index registers to seven and only selected one at a time; the "or" behavior remained available in a compatibility mode of the IBM 7094.
695:
The 737 Magnetic Core
Storage Unit serves as RAM and provides 4,096 36-bit words, the equivalent of 18,432 bytes. The 727 Magnetic Tape Units store over 5 million 6-bit characters per reel.
503:
field in the instruction is a bit map specifying which of the registers participate in the operation. However, when more than one index register is selected, then their contents are bit-wise
228:
computer sings the same song. (Bell
Laboratories later released a recording, on ten inch 78-RPM records, of speech and music created this way. It was apparently made with an
94:
The type 704 Electronic Data-Processing
Machine is a large-scale, high-speed electronic calculator controlled by an internally stored program of the single address type.
98:
The 704 at that time was thus regarded as "pretty much the only computer that could handle complex math". The 704 was a significant improvement over the earlier
52:
1364:
562:
Type B instructions have, in sequence, a 12-bit instruction code (with bits 2 and 3 set to 0 to distinguish them from type A instructions), a 2-bit
265:
779:
1264:
507:– not added – together before the decrement takes place. This behavior persisted in later scientific-architecture machines (such as the
1476:
1212:
1185:
1159:
1005:
965:
131:
24:
1304:
919:
242:, a math instructor at MIT, used the IBM 704 as a research tool to investigate the probabilities of winning while developing his
483:
1336:
216:
demonstration, and Clarke was so impressed that six years later he used it in the climactic scene of his novel and screenplay for
1357:
272:
141:
The 704 could execute up to 12,000 floating-point additions per second. IBM produced 123 type 704 systems between 1955 and 1960.
1095:
937:
672:
Reader and
Recorder, and one 737 Magnetic Core Storage Unit. Total mass was about 19,466 pounds (9.7 short tons; 8.8 t).
1030:
261:
254:
712:
compilers could successfully translate because the machine would fail before a successful compilation of a large program.
527:
There are two instruction formats, referred to as "Type A" and "Type B". Most instructions were of type B.
1461:
1350:
1248:
212:
was coincidentally visiting friend and colleague John Pierce at the Bell Labs Murray Hill facility at the time of this
1435:
1427:
283:
47:
837:
1440:
1053:
726:
787:
1466:
1268:
218:
19:
609:
546:
field. There are conditional jump operations based on the values in the index registers specified in the
579:
1471:
1320:
159:
126:. To support these new features, the instructions were expanded to use the full 36-bit word. The new
83:
1241:
Abstracting Away the
Machine: The History of the FORTRAN Programming Language (FORmula TRANslation)
1219:
1189:
1163:
784:
IBM Archives β Exhibits β IBM Mainframes β Mainframes reference room β Mainframes product profiles
589:
numbers have a magnitude sign, an 8-bit excess-128 exponent and a 27-bit fraction (no hidden bit).
808:
492:
233:
980:
593:
250:
1020:
901:
185:
923:
192:
by using an IBM 704 computer to synthesize speech. Kelly's voice recorder synthesizer
115:
8:
862:
754:
257:
135:
883:
746:
67:
1096:"Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I"
122:, floating-point arithmetic instructions, 15-bit addressing and the addition of three
1244:
1026:
705:
276:
164:
1141:
1122:
1099:
941:
1328:
295:
287:
213:
209:
111:
107:
64:
1061:, IBM Systems Reference Library (fifth ed.), IBM, 1962, p. 8, A22-6703-4
246:
gaming theory. He used FORTRAN to formulate the equations of his research model.
239:
127:
684:
586:
496:
264:
scientists and mathematicians in the calculation of satellite orbits: Dr.
123:
636:("contents of the decrement part of register") were named after these fields.
114:, the same as the memory's word size. Changes from the 701 include the use of
1455:
1382:
119:
1342:
1327:
discusses his role in the design of several computers for IBM including the
979:(1). Cambridge, MA: Massachusetts Institute of Technology: 1. Archived from
1074:
1324:
1299:
938:"Bell Labs: Where "HAL" First Spoke (Bell Labs Speech Synthesis website)"
669:
632:
626:
621:
205:
178:
177:, the first computer music program, was developed on the IBM 704 by
103:
79:
75:
683:
Cathode Ray Tube Output
Recorder was also available, which is a 21-inch
102:
in terms of architecture and implementation. Like the 701, the 704 used
721:
644:
200:
243:
189:
1292:
Charles J. Bashe, Lyle R. Johnson, John H. Palmer, Emerson W. Pugh,
954:
Discovery channel documentary with interviews by Ed and Vivian Thorp
31:
688:
516:
512:
229:
224:
1129:. A Third Survey of Domestic Electronic Digital Computing Systems.
1417:
1412:
1402:
1397:
1392:
1387:
1332:
709:
680:
665:
661:
657:
649:
556:
508:
504:
194:
174:
150:
99:
40:
36:
1213:"General Motors/North American Monitor for the IBM 704 Computer"
1006:"Vanguard Satellite Launching Vehicle -- An Engineering Summary"
130:, which is not compatible with the 701, became the base for the
966:"Math Instructor Programs Computor: Thorpe, 704 Beat Blackjack"
260:
in the fall of 1957. IBM provided four staff scientists to aid
1317:
1148:. A Survey of Domestic Electronic Digital Computing Systems.
268:, Dr. John Greenstadt, Thomas Apple and Richard Hatch.
82:, it was the first mass-produced computer with hardware for
668:
Magnetic Tape Units and one 753 Tape
Control Unit, one 733
157:
were first developed for the 704, as was the SAP assemblerβ
154:
495:, a 36-bit multiplier/quotient register, and three 15-bit
1339:
and IBM's management of the design process for computers.
271:
The IBM 704 was used for flight dynamics analyses of the
188:
created one of the most famous moments in the history of
106:
logic circuitry, but increased the instruction size from
71:
838:"Assemblers were once people: My aunt did it for NASA"
708:
in 1949. This limited the program size that the first
53:
Museo
Nazionale Scienza e Tecnologia Leonardo da Vinci
605:
instruction was not implemented on the IBM 704.
1160:"IBM Archives: 704 Cathode Ray Tube Output Recorder"
902:"LISP prehistory β Summer 1956 through Summer 1958"
818:. International Business Machines Corporation. 1955
1186:"IBM Archives: IBM 737 Magnetic core storage unit"
809:"IBM Electronic Data-Processing Machines TYPE 704"
948:
630:("contents of the address part of register") and
1453:
1178:
1152:
1022:First Generation Mainframes: The IBM 700 Series
530:Type A instructions have, in sequence, a 3-bit
522:
912:
774:
772:
1372:
1358:
1025:. Cambridge Scholars Publishing. p. 69.
1257:
957:
930:
769:
592:Alphanumeric characters were usually 6-bit
550:field. Some instructions also subtract the
1365:
1351:
1335:, and IBM 704. He discusses his work with
1305:Hackers: Heroes of the Computer Revolution
1267:, University of Manchester, archived from
1234:
1232:
656:Controls are included in the 704 for: one
639:
578:Fixed-point numbers are stored in binary
253:was used as the official tracker for the
1323:, University of Minnesota, Minneapolis.
1093:
963:
643:
482:
46:
30:
18:
1318:Oral history interview with Gene Amdahl
1238:
1229:
1072:
1018:
620:fields to store the head and tail of a
1477:Computer-related introductions in 1954
1454:
786:. IBM. 23 January 2003. Archived from
664:, one 721 Punched Card Recorder, five
624:respectively. The primitive functions
1346:
835:
262:Smithsonian Astrophysical Observatory
255:Smithsonian Astrophysical Observatory
1139:
1120:
964:Levinger, Jeff (February 10, 1961).
1210:
920:"Arthur C. Clarke online Biography"
884:"History of FORTRAN and FORTRAN II"
13:
1286:
1075:"From the IBM 704 to the IBM 7094"
487:IBM 704 vacuum-tube circuit module
204:, with musical accompaniment from
132:"scientific architecture" subclass
14:
1488:
1311:
1188:. 23 January 2003. Archived from
1162:. 23 January 2003. Archived from
1140:Weik, Martin H. (December 1955).
566:field, four unused bits, a 3-bit
1055:IBM 7094 Principles of Operation
1019:Kaisler, Stephen H. (Nov 2018).
284:Los Alamos Scientific Laboratory
1204:
1133:
1114:
1087:
1066:
1046:
1012:
998:
608:The original implementation of
1121:Weik, Martin H. (March 1961).
894:
876:
855:
829:
801:
739:
698:
1:
732:
727:List of vacuum-tube computers
534:(instruction code), a 15-bit
63:is the model name of a large
1296:(MIT Press, Cambridge, 1986)
1239:Lorenzo, Mark Jones (2019).
780:"704 Data Processing System"
648:Loading punch card into the
523:Instruction and data formats
301:
144:
7:
1243:. Independently published.
888:Software Preservation Group
836:Pesce, Mark (26 Feb 2015).
816:IBM 704 Manual of Operation
715:
16:Vacuum-tube computer system
10:
1493:
459:
419:
411:
400:
389:
382:
286:(LASL) developed an early
149:The programming languages
35:An IBM 704 computer, with
1462:IBM vacuum tube computers
1426:
1378:
1373:IBM vacuum tube computers
1321:Charles Babbage Institute
863:"History of IBM Timeline"
491:The IBM 704 had a 38-bit
469:
466:
451:
448:
440:
437:
429:
426:
408:
397:
160:Symbolic Assembly Program
84:floating-point arithmetic
1265:"The Manchester Mark 1"
1094:McCarthy, John (1960).
906:www-formal.stanford.edu
658:711 Punched Card Reader
596:, packed six to a word.
236:successor to the 704.)
163:, later distributed by
23:An IBM 704 computer at
865:. IBM. 23 January 2003
662:716 Alphabetic Printer
653:
640:Memory and peripherals
488:
251:MIT Computation Center
169:SHARE Assembly Program
96:
56:
44:
28:
1294:IBM's Early Computers
926:on December 11, 1997.
647:
580:sign/magnitude format
486:
473:Program Counter
219:2001: A Space Odyssey
210:Arthur C. Clarke
186:John Larry Kelly, Jr.
92:
74:in 1954. Designed by
50:
34:
22:
842:Software β Developer
570:field, and a 15-bit
542:field, and a 15-bit
404:Multiplier/Quotient
116:magnetic-core memory
1467:IBM 700/7000 series
1337:Nathaniel Rochester
1271:on 21 November 2008
1211:Patrick, Robert L.
1192:on January 19, 2005
1166:on January 19, 2005
790:on January 14, 2005
755:Columbia University
308:
258:Operation Moonwatch
249:The IBM 704 at the
198:recreated the song
184:In 1962, physicist
136:IBM 700/7000 series
88:Manual of operation
704:comparable to the
654:
489:
307:IBM 704 registers
306:
68:mainframe computer
57:
45:
29:
1449:
1448:
1032:978-1-5275-0650-3
944:on April 1, 2014.
706:Manchester Mark 1
687:with a very long
585:Single-precision
481:
480:
477:
476:
266:Giampiero Rossoni
1484:
1472:36-bit computers
1367:
1360:
1353:
1344:
1343:
1280:
1279:
1278:
1276:
1261:
1255:
1254:
1236:
1227:
1226:
1224:
1218:. Archived from
1217:
1208:
1202:
1201:
1199:
1197:
1182:
1176:
1175:
1173:
1171:
1156:
1150:
1149:
1137:
1131:
1130:
1118:
1112:
1110:
1108:
1107:
1098:. Archived from
1091:
1085:
1084:
1082:
1081:
1070:
1064:
1062:
1060:
1050:
1044:
1043:
1041:
1039:
1016:
1010:
1009:
1002:
996:
995:
993:
991:
986:on July 16, 2015
985:
970:
961:
955:
952:
946:
945:
940:. Archived from
934:
928:
927:
922:. Archived from
916:
910:
909:
898:
892:
891:
880:
874:
873:
871:
870:
859:
853:
852:
850:
849:
833:
827:
826:
824:
823:
813:
805:
799:
798:
796:
795:
776:
767:
766:
764:
762:
743:
415:Sense Indicator
313:
312:
309:
305:
296:batch processing
214:speech synthesis
39:tape drives and
1492:
1491:
1487:
1486:
1485:
1483:
1482:
1481:
1452:
1451:
1450:
1445:
1422:
1374:
1371:
1314:
1289:
1287:Further reading
1284:
1283:
1274:
1272:
1263:
1262:
1258:
1251:
1237:
1230:
1222:
1215:
1209:
1205:
1195:
1193:
1184:
1183:
1179:
1169:
1167:
1158:
1157:
1153:
1138:
1134:
1119:
1115:
1105:
1103:
1092:
1088:
1079:
1077:
1071:
1067:
1058:
1052:
1051:
1047:
1037:
1035:
1033:
1017:
1013:
1004:
1003:
999:
989:
987:
983:
968:
962:
958:
953:
949:
936:
935:
931:
918:
917:
913:
900:
899:
895:
882:
881:
877:
868:
866:
861:
860:
856:
847:
845:
834:
830:
821:
819:
811:
807:
806:
802:
793:
791:
778:
777:
770:
760:
758:
757:. February 2001
745:
744:
740:
735:
718:
701:
642:
538:field, a 3-bit
525:
497:index registers
461:Program counter
421:Index registers
373:
365:
357:
352:
344:
336:
328:
323:
318:
304:
240:Edward O. Thorp
147:
128:instruction set
124:index registers
51:IBM 704 at the
17:
12:
11:
5:
1490:
1480:
1479:
1474:
1469:
1464:
1447:
1446:
1444:
1443:
1438:
1432:
1430:
1424:
1423:
1421:
1420:
1415:
1410:
1405:
1400:
1395:
1390:
1385:
1379:
1376:
1375:
1370:
1369:
1362:
1355:
1347:
1341:
1340:
1313:
1312:External links
1310:
1309:
1308:
1297:
1288:
1285:
1282:
1281:
1256:
1250:978-1082395949
1249:
1228:
1225:on 2021-08-31.
1203:
1177:
1151:
1132:
1113:
1086:
1065:
1045:
1031:
1011:
997:
956:
947:
929:
911:
893:
875:
854:
844:. The Register
828:
800:
768:
737:
736:
734:
731:
730:
729:
724:
717:
714:
700:
697:
685:vector display
641:
638:
598:
597:
590:
587:floating-point
583:
524:
521:
479:
478:
475:
474:
471:
468:
464:
463:
457:
456:
453:
450:
446:
445:
442:
439:
435:
434:
431:
428:
424:
423:
417:
416:
413:
410:
406:
405:
402:
399:
395:
394:
391:
387:
386:
384:Data registers
380:
379:
377:(bit position)
374:
371:
369:
366:
363:
361:
358:
355:
353:
350:
348:
345:
342:
340:
337:
334:
332:
329:
326:
324:
321:
319:
316:
303:
300:
146:
143:
120:Williams tubes
86:. The IBM 704
70:introduced by
15:
9:
6:
4:
3:
2:
1489:
1478:
1475:
1473:
1470:
1468:
1465:
1463:
1460:
1459:
1457:
1442:
1439:
1437:
1434:
1433:
1431:
1429:
1425:
1419:
1416:
1414:
1411:
1409:
1406:
1404:
1401:
1399:
1396:
1394:
1391:
1389:
1386:
1384:
1381:
1380:
1377:
1368:
1363:
1361:
1356:
1354:
1349:
1348:
1345:
1338:
1334:
1330:
1326:
1322:
1319:
1316:
1315:
1307:
1306:
1301:
1298:
1295:
1291:
1290:
1270:
1266:
1260:
1252:
1246:
1242:
1235:
1233:
1221:
1214:
1207:
1191:
1187:
1181:
1165:
1161:
1155:
1147:
1146:ed-thelen.org
1143:
1136:
1128:
1127:ed-thelen.org
1124:
1117:
1102:on 2013-10-04
1101:
1097:
1090:
1076:
1073:John Savard.
1069:
1057:
1056:
1049:
1034:
1028:
1024:
1023:
1015:
1007:
1001:
982:
978:
974:
967:
960:
951:
943:
939:
933:
925:
921:
915:
907:
903:
897:
889:
885:
879:
864:
858:
843:
839:
832:
817:
810:
804:
789:
785:
781:
775:
773:
761:September 20,
756:
752:
748:
747:"The IBM 704"
742:
738:
728:
725:
723:
720:
719:
713:
711:
707:
696:
693:
690:
686:
682:
677:
673:
671:
670:Magnetic Drum
667:
663:
659:
651:
646:
637:
635:
634:
629:
628:
623:
619:
615:
611:
606:
604:
595:
591:
588:
584:
581:
577:
576:
575:
573:
569:
565:
560:
558:
553:
549:
545:
541:
537:
533:
528:
520:
518:
517:IBM 7094
514:
513:IBM 7090
510:
506:
502:
498:
494:
485:
472:
465:
462:
458:
454:
447:
443:
436:
432:
425:
422:
418:
414:
407:
403:
396:
392:
388:
385:
381:
378:
375:
370:
367:
362:
359:
354:
349:
346:
341:
338:
333:
330:
325:
320:
315:
314:
311:
310:
299:
297:
293:
289:
285:
280:
278:
274:
269:
267:
263:
259:
256:
252:
247:
245:
241:
237:
235:
231:
227:
226:
225:HAL 9000
221:
220:
215:
211:
207:
203:
202:
197:
196:
191:
187:
182:
180:
176:
172:
170:
166:
162:
161:
156:
152:
142:
139:
137:
133:
129:
125:
121:
117:
113:
109:
105:
101:
95:
91:
89:
85:
81:
77:
73:
69:
66:
62:
54:
49:
42:
38:
33:
26:
21:
1407:
1303:
1293:
1273:, retrieved
1269:the original
1259:
1240:
1220:the original
1206:
1194:. Retrieved
1190:the original
1180:
1168:. Retrieved
1164:the original
1154:
1145:
1135:
1126:
1116:
1104:. Retrieved
1100:the original
1089:
1078:. Retrieved
1068:
1054:
1048:
1036:. Retrieved
1021:
1014:
1000:
988:. Retrieved
981:the original
976:
972:
959:
950:
942:the original
932:
924:the original
914:
905:
896:
887:
878:
867:. Retrieved
857:
846:. Retrieved
841:
831:
820:. Retrieved
815:
803:
792:. Retrieved
788:the original
783:
759:. Retrieved
751:columbia.edu
750:
741:
702:
694:
678:
674:
655:
631:
625:
617:
613:
607:
602:
599:
571:
567:
563:
561:
557:IBM 709
551:
547:
543:
539:
535:
531:
529:
526:
515:) until the
509:IBM 709
500:
490:
460:
420:
393:Accumulator
383:
376:
291:
281:
270:
248:
238:
223:
222:, where the
217:
199:
193:
183:
173:
168:
158:
148:
140:
100:IBM 701
97:
93:
87:
60:
58:
1300:Steven Levy
1196:10 December
1170:10 December
1111:p. 28.
699:Reliability
622:linked list
493:accumulator
234:solid-state
206:Max Mathews
179:Max Mathews
138:computers.
118:instead of
104:vacuum-tube
80:Gene Amdahl
76:John Backus
43:CRT display
1456:Categories
1275:24 January
1106:2009-02-14
1080:2009-11-15
869:2019-07-04
848:2016-08-18
822:2017-12-28
794:2016-08-18
733:References
722:GM-NAA I/O
294:to enable
279:rockets.
201:Daisy Bell
1383:305 RAMAC
1142:"IBM-704"
1123:"IBM 704"
618:decrement
612:uses the
603:Store Tag
552:decrement
536:decrement
302:Registers
244:blackjack
190:Bell Labs
145:Landmarks
90:states:
1441:AN/FSQ-8
1436:AN/FSQ-7
973:The Tech
716:See also
689:phosphor
455:Index 3
444:Index 2
433:Index 1
277:Vanguard
230:IBM 7090
1333:IBM 701
1329:STRETCH
1038:Apr 25,
710:Fortran
681:IBM 740
650:IBM 711
614:address
574:field.
572:address
544:address
467:
449:
438:
427:
409:
398:
288:monitor
195:vocoder
151:FORTRAN
134:of the
112:36 bits
108:18 bits
65:digital
61:IBM 704
55:, Milan
41:IBM 780
37:IBM 727
27:in 1957
1325:Amdahl
1247:
1029:
990:May 8,
660:, one
652:reader
532:prefix
290:named
232:, the
1223:(PDF)
1216:(PDF)
1059:(PDF)
984:(PDF)
969:(PDF)
812:(PDF)
175:MUSIC
165:SHARE
1428:SAGE
1277:2009
1245:ISBN
1198:2012
1172:2012
1040:2019
1027:ISBN
992:2009
763:2024
679:The
616:and
610:Lisp
564:flag
511:and
505:ORed
452:XR3
441:XR2
430:XR1
368:...
360:...
347:...
339:...
331:...
292:SLAM
282:The
155:LISP
153:and
78:and
59:The
25:NACA
1418:709
1413:705
1408:704
1403:702
1398:701
1393:650
1388:610
666:727
633:cdr
627:car
594:BCD
568:tag
548:tag
540:tag
501:tag
470:PC
412:SI
401:MQ
390:AC
275:'s
273:NRL
167:as
110:to
72:IBM
1458::
1331:,
1302:,
1231:^
1144:.
1125:.
977:81
975:.
971:.
904:.
886:.
840:.
814:.
782:.
771:^
753:.
749:.
559:.
298:.
208:.
181:.
171:.
1366:e
1359:t
1352:v
1253:.
1200:.
1174:.
1109:.
1083:.
1063:.
1042:.
1008:.
994:.
908:.
890:.
872:.
851:.
825:.
797:.
765:.
582:.
372:0
364:7
356:4
351:5
343:3
335:1
327:5
322:6
317:7
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.