IBM a sedm trpaslíků (sedmá část)

Pavel Tišnovský 8. 2. 2011

Dnes se budeme, podobně jako minule, zabývat firmou Burroughs Corporation, která začala v padesátých letech konstruovat sálové počítače. Minule jsme si popsali první počítač této firmy – Datatron/Burroughs 205. Dnes si představíme platformu B5000, která měla značný vliv na vývoj dalších počítačů.

Obsah

1. Sálové počítače Burroughs B5000

2. Mainframe Burroughs B5000 a jeho konkurenti

3. Architektura počítačů Burroughs B5000

4. Periferní zařízení počítačů Burroughs B5000 používaná pro vstup dat

5. Výstupní periferní zařízení

6. Operační paměť a zásobníkové rámce

7. Pomocné pracovní registry a jejich význam

8. Obsah následující části seriálu

9. Odkazy na Internetu

1. Sálové počítače Burroughs B5000

V předchozí části seriálu o historii vývoje výpočetní techniky jsme si stručně řekli, jakým způsobem v předminulém století vznikla firma Burroughs Corporation, která se původně (ještě pod odlišným názvem) zabývala výrobou mechanických sčítacích strojů a později i plnohodnotných kalkulátorů. Teprve ve druhé polovině padesátých let minulého století se tato společnost začala orientovat i na konstrukci sálových počítačů. V předchozím dílu seriálu jsme si popsali mainframy Datatron 205/Burroughs 205, které firmě Burroughs Corporation umožnily vstup na trh se sálovými počítači. Tento typ mainframů se stal významný především z toho důvodu, že se právě na této platformě potvrdila užitečnost vyšších programovacích jazyků, a to jak při psaní běžných aplikací, tak i při vytváření systémových utilit. Tento trend se ještě ve větší míře potvrdil po zavedení nové architektury mainframů firmy Burroughs – řady Burroughs B5000. Právě touto platformou se budeme podrobněji zabývat v následujících kapitolách.

ibm06

Obrázek 1: Ovládací panel sálového počítače IBM-702.

2. Mainframe Burroughs B5000 a jeho konkurenti

Na prvních návrzích počítače Burroughs B5000 se začalo pracovat již na konci padesátých let minulého století, ale jeho finální verze připravená pro prodej byla dokončena až v roce 1961, tj. v době, kdy na trhu vládly mainframy firmy IBM řady 700, 7000 a 1400, ovšem několik let předtím, než se situace na trhu poměrně radikálně změnila s příchodem slavného počítače IBM/360 a taktéž minipočítačů PDP firmy Digital Equipment Corporation (v zájmu přesnosti raději upřesním, že počítač PDP-1 byl sice zkonstruován již v roce 1960, ovšem větší význam pro další vývoj informatiky měly až modely vytvořené v pozdějších letech). Abychom si uvědomili, s jakým „obrem“ musel „trpaslík“ představovaný firmou Burroughs soutěžit, jsou v následujících tabulkách vypsány všechny tři řady (série) sálových počítačů firmy IBM vyráběných v rozmezí padesátých a první poloviny šedesátých let minulého století:

Sálové počítače IBM řady 700:

Označení modelu Určení Rok výroby
701 první elektronický počítač firmy IBM 1952
702 hromadné zpracování dat 1953
704 vědeckotechnické výpočty 1954
705 hromadné zpracování dat 1954
709 vědeckotechnické výpočty 1958
ibm07

Obrázek 2: Sálový počítač IBM-704.

Sálové počítače IBM řady 7000:

Označení modelu Určení Rok výroby
7090 vědeckotechnické výpočty 1959
7094 vědeckotechnické výpočty 1962
7094 II vědeckotechnické výpočty 1964
7040 vědeckotechnické výpočty 1963
7044 vědeckotechnické výpočty 1963
7080 hromadné zpracování dat 1961
7010 rozšířená verze IBM 1410 1962
7070 dekadická číselná soustava 1960
7072 dekadická číselná soustava 1962
7074 dekadická číselná soustava 1961
ibm08

Obrázek 3: Sálový počítač IBM-705.

Sálové počítače IBM řady 1400:

Označení modelu Určení Rok výroby
IBM 1240 zpracování řetězců a BCD čísel proměnné délky 1963
IBM 1401 zpracování řetězců a BCD čísel proměnné délky 1959
IBM 1410 zpracování řetězců a BCD čísel proměnné délky 1960
IBM 1420 zpracování řetězců a BCD čísel proměnné délky 1962
IBM 1440 zpracování řetězců a BCD čísel proměnné délky 1962
IBM 1450 zpracování řetězců a BCD čísel proměnné délky 1968
IBM 1460 zpracování řetězců a BCD čísel proměnné délky 1963
IBM 7010 zpracování řetězců a BCD čísel proměnné délky 1962
ibm2

Obrázek 4: Zrekonstruovaný řídicí panel počítače IBM 1401.

3. Architektura počítačů Burroughs B5000

Z hlediska použitých technologií se platforma Burroughs B5000 příliš nelišila od ostatních mainframů, které byly na přelomu padesátých a šedesátých let minulého století navrhovány. Řadič a aritmeticko-logická jednotka byla vytvořena z diskrétních tranzistorů a samozřejmě též z pasivních elektronických součástek. Zajímavé bylo především to, že namísto jedné procesorové jednotky bylo možné v počítači Burroughs B5000 použít procesory dva, což do velké míry ovlivnilo jak strukturu a organizaci operační paměti, tak i způsob řízení jednotlivých procesů a přenosu dat mezi oběma procesory (více informací si řekneme příště). Pro konstrukci operační paměti byly použity dvě různé technologie, což znamenalo, že celá operační paměť byla rozdělena do dvou odlišných modulů – bubnovou paměť a paměť sestavenou z feromagnetických jader (core memory). Každá z těchto pamětí měla samozřejmě odlišnou kapacitu a taktéž jinou dobu přístupu ke čteným a/nebo zapisovaným informacím a z tohoto důvodu se každá z těchto pamětí používala poněkud odlišným způsobem popsaným v následující kapitole.

pdp1

Obrázek 5: V pozadí této fotografie můžeme vidět počítač PDP-1 (procesorovou jednotku i jednotku periferií), v popředí je vidět stůl operátora s řídicím panelem.

Na platformě Burroughs B5000 však byly použity i některé ve své době přelomové technologie. Především se jednalo o první počítač, na němž byla implementována virtuální paměť používající deskriptory a segmenty. Dále byly díky použité instrukční sadě a způsobu organizace operační paměti všechny funkce vytvářené programátory reentrantní, což v mnoha případech zjednodušilo jak návrh programů, tak i návrh operačního systému (připomeňme si, že například funkce v původním FORTRANu nebyly reentrantní kvůli způsobu předávání parametrů a metodě použité pro alokaci proměnných). Pravděpodobně největší novinkou však bylo to, že procesor počítače Burroughs B5000 nebyl optimalizovaný na provádění konkrétních typů úloh, jak tomu bylo například u mainframů firmy IBM (viz též tabulky uvedené v první kapitole). Konstruktéři mainframu B5000 zvolili poněkud odlišný postup, protože procesor svého počítače navrhli tak, aby se na něm zjednodušil překlad a současně i spouštění programů napsaných v některém vyšším programovacím jazyce – především ALGOLu a v menší míře taktéž COBOLu (při použití tohoto jazyka se navíc projevila dobrá podpora pro práci s řetězci).

ibm10

Obrázek 6: Sálový počítač System/360 model 50, který byl v mnoha ohledech konkurentem řady Burroughs B5000.

4. Periferní zařízení počítačů Burroughs B5000 používaná pro vstup dat

Již v předchozí části tohoto seriálu jsme si řekli, že společnost Burroughs nenabízela svým zákazníkům pouze vlastní mainframe (tj. procesor sestavený z diskrétních součástek, řadič a operační paměť), ale i všechna potřebná periferní zařízení, operátorskými konzolami počínaje a tiskárnami konče. Na následujícím obrázku jsou všechna nabízená periferní zařízení zobrazena. Pro vstup dat se používaly zejména čtečky děrných štítků. Štítky mohly být vyděrovány buď v samostatném (částečně mechanickém) zařízení nebo děrovačkou štítků připojenou přímo k počítači. Pro vstup menšího množství údajů bylo taktéž možné použít klávesnici, i když se vzhledem ke způsobu práce tehdejších aplikací – existoval velký tlak na tvorbu aplikací běžících v dávkovém režimu (batch mode) – tato možnost používala pouze v malém množství aplikací. Po zpracování mohla být data uložena na magnetické pásky, přičemž k počítači B5000 mohlo být připojeno celkem šestnáct jednotek s magnetickými pásky (jednotky pracovaly paralelně, protože každá měla přiřazený samostatný I/O kanál). Kromě magnetických pásek bylo možné data vyděrovat i na děrné štítky.

Obrázek 7: Periferní zařízení počítače Burroughs B5000.

5. Výstupní periferní zařízení

O bubnové paměti, kterou lze v určitých ohledech taktéž považovat za periferní zařízení, se ještě zmíníme v následující kapitole, takže nám zbývá popis tiskáren, tj. výstupních periferních zařízení. K počítači Burroughs B5000 byla připojena jedna relativně pomalá tiskárna používaná pro tisk hlášení operačního systému i zpráv posílaných spuštěnými programy. Pro výstup dat, například pro tvorbu tiskových sestav atd., se používaly takzvané řádkové tiskárny. Jednalo se o rozměrná zařízení, která dokázala v jednom kroku vytisknout celý textový řádek, protože pro každou znakovou pozici na textovém řádku bylo použito samostatné rotující kolečko obsahující všechny tisknutelné znaky (tisková hlava se tedy u řádkových tiskáren nemusela pohybovat ve vodorovném směru tak, jak je tomu u jehličkových nebo inkoustových tiskáren, pouze se ve vhodných okamžicích typové kolečko přitisklo přes barvicí pásku na papír). Tyto tiskárny vzhledem k poměrně vysoké rychlosti tisku používaly traktorový papír.

Obrázek 8: Sálový počítač Burroughs B5000.

Kromě těchto tiskáren používaných pro výstup textu bylo možné k počítači Burroughs B5000 připojit i grafický plotter. Původně se sice nejednalo o velkoformátový plotter, protože tisknutelná plocha zhruba odpovídala formátu A3, ovšem v následujících letech došlo i k vývoji větších a přesnějších plotterů vhodných i pro tisk větších výkresů (na tomto místě je však vhodné poznamenat, že éra systémů CAD a CAM nastala až o mnoho let později, takže se plottery v první generaci počítačů Burroughs B5000 spíše používaly pro tisk různých grafů).

6. Operační paměť a zásobníkové rámce

V předchozím textu jsme si řekli, že operační paměť počítače Burroughs B5000 byla rozdělena do dvou modulů – bubnové paměti a paměti s feritovými jádry (core memory). Bubnová paměť byla dále rozdělena do několika oblastí. První z těchto oblastí byla vyhrazena pro takzvaný MCS neboli Master Control Program. Původně se jednalo o poměrně jednoduchou utilitu sloužící pro načítání a řízení jednotlivých programů, ovšem později se z této utility (samozřejmě po mnoha rozšířeních a vylepšeních) stal plnohodnotný operační systém používaný na počítačích Burroughs a později i na počítačích Unisys ClearPath atd. (jedná se tedy o operační systém využívaný po více než 40 let, je o několik let starší než UNIX). Další část bubnové paměti byla vyhrazena pro překladače vyšších programovacích jazyků (ALGOL, COBOL), které si zde ukládaly překládaný objektový kód, informace o chybách při překladu atd. V bubnové paměti byly taktéž uloženy informace o všech segmentech, na které byla paměť rozdělena (více informací bude uvedeno v následující části seriálu).

Obrázek 9: Paměťové oblasti vytvořené v bubnové paměti.

Taktéž paměť zkonstruovaná z feromagnetických jader byla rozdělena na mnoho oblastí, z nichž nejdůležitější byly oblasti s uloženými zásobníkovými rámci (stack frames) jednotlivých procesů, které byly v daném okamžiku spuštěny. Tím se dostáváme k zásobníkové architektuře počítačů B5000. Procesor i instrukční sada těchto mainframů totiž byla navržena takovým způsobem, aby se všechny aritmetické a logické operace prováděly s operandy uloženými na zásobníku, přičemž pro každou volanou funkci byl vytvořen nový rámec zásobníku (stack frame), na němž byly kromě zpracovávaných operandů uloženy i parametry funkce a její lokální proměnné. Díky použití zásobníků byly všechny funkce reentrantní a navíc se při pádu programu namísto dnes běžně používaného core dumpu na počítačích B5000 vygeneroval takzvaný stack dump podobný výpisu zásobníku používaného na platformě Java, ovšem s tím poměrně podstatným a důležitým rozdílem, že stack dump obsahoval i hodnoty lokálních proměnných uložených v jednotlivých zásobníkových rámcích. Jinými slovy to znamená, že stack frame obsahoval celý stav programu, který zhavaroval.

Obrázek 10: Paměťové oblasti vytvořené v paměti sestavené z feritových ja­der.

7. Pomocné pracovní registry a jejich význam

Všechny zásobníkové rámce volaných funkcí byly ukládány do operační paměti, konkrétně do oblasti tvořené pamětí s feritovými jádry. To je sice z teoretického hlediska zcela korektní, už jen z toho důvodu, že je celý stav procesu uložen v paměti a ne částečně v registrech (což problematizuje přepínání procesů), ovšem v praxi by provedení každé aritmetické či logické operace znamenalo, že by se operand či operandy musely před provedením operace nejdříve načíst z operační paměti (konkrétně z prvních několika položek ležících na vrcholu zásobníku), což je časově náročná operace. Taktéž výsledek operace by bylo nutné přenést zpět do operační paměti, aby se mohl uložit zpět na vrchol zásobníku. Aby se toto neustálé a současně i zdlouhavé přenášení operandů eliminovalo, byly přímo v procesoru počítače Burroughs B5000 umístěny dva pracovní registry nazvané A a B. Tyto registry však nebyly přímo přístupné ani viditelné programátorům, protože sloužily pouze pro uložení prvních dvou položek umístěných na vrcholu zásobníku.

Obrázek 11: Operátorská konzole počítače Burroughs B5000.

Ve skutečnosti se tedy některá aritmetická operace, například operace součtu ADD, provedla takovým způsobem, že se oba operandy přečetly z pomocných registrů A a B a po provedení operace se její výsledek uložil zpět do registru A. Nový obsah pomocného registru B se mezitím načetl z operační paměti, přičemž tato operace mohla proběhnout paralelně s vlastním výpočtem (pro přenos dat se nepoužívá ALU a naopak ALU nepotřebuje přenášet žádná data, protože je má umístěná v registrech). Naprostá většina aritmetických a logických operací pracovala pouze s jedním či dvěma operandy, takže postačovalo skutečně implementovat pouze dva pomocné registry. Procesor počítače Burroughs B5000 obsahoval ještě jeden registr (opět neviditelný pro programátory). Jednalo se o registr S obsahující ukazatel na vrchol zásobníku, jehož obsah se zvyšoval nebo snižoval podle toho, jaká operace se se zásobníkem prováděla. Kromě aritmetických a logických operací pracovaly s obsahem zásobníku ještě následující instrukce:

Instrukce Význam
DLET odstranění položky z vrcholu zásobníku
EXCH prohození nejvyšších dvou položek na zásobníku
RSUP rotace prvních třech položek na zásobníku směrem nahoru
RSDN rotace prvních třech položek na zásobníku směrem dolů
DUPL duplikace položky uložené na vrcholu zásobníku
MKST vytvoření nového zásobníkového rámce

Poznámka: znalci programovacího jazyka Forth si pravděpodobně povšimli, že výše uvedené instrukce se i přes odlišná jména podobají Forthovským slovům DROP, SWAP, ROT a DUP. Skutečně je tomu tak, protože Chuck Moore (autor Forthu) v jednom rozhovoru řekl, že se při jeho návrhu inspiroval mj. i platformou Burroughs B5000.

8. Obsah následující části seriálu

V následující části tohoto seriálu si podrobněji popíšeme, jakým způsobem vlastně byla operační paměť počítače Burroughs B5000 organizována, tj. jak se používaly deskriptory a segmenty. Taktéž se zmíníme o tom, jak se zpracovávaná data opatřovala takzvaným tagem, který nesl informaci o typech zpracovávaných dat. Díky použití tagů mohla sada instrukcí počítače B5000 zůstat velmi jednoduchá; protože se například instrukce ADD mohla chovat odlišně pro operandy různých typů (je ostatně zajímavé, že bajtkód používaný v JVM sice má podporu pro tagování a následnou kontrolu typů dat, ovšem namísto jediné instrukce ADD existuje celá řada instrukcí používaných pro různé typy operandů – návrháři Javy si toho sice jsou vědomi, ale zavedený bajtkód již nemohou z důvodů zpětné kompatibility nijak změnit).

widgety

Obrázek 12: Postup při překladu programu napsaného v programovacím jazyce ALGOL.

Kromě výše zmíněných informací si příště taktéž řekneme, jakým způsobem se prováděl překlad programů napsaných v programovacím jazyce ALGOL.. Tento programovací jazyk totiž na platformě Burroughs B5000 nahrazoval assembler (jazyk symbolických instrukcí), což zjednodušilo návrh systémových programů a navíc to umožnilo dosažení dopředné kompatibility již napsaných aplikací se všemi dalšími mainframy, které firma Burroughs v následujících přibližně 25 letech vytvořila.

9. Odkazy na Internetu

  1. HOW ASCII GOT ITS BACKSLASH
    http://www.bob­bemer.com/BAC­SLASH.HTM
  2. Burroughs B5000 Computer
    http://www.cs­.uaf.edu/2010/fa­ll/cs441/proj1/b5000/
  3. Burroughs large systems (Wikipedia)
    http://en.wiki­pedia.org/wiki/Bu­rroughs_large_sys­tems
  4. Burroughs large systems instruction sets (Wikipedia)
    http://en.wiki­pedia.org/wiki/Bu­rroughs_large_sys­tems_instructi­on_sets
  5. William Seward Burroughs
    http://history-computer.com/Mecha­nicalCalculator­s/19thCentury/Bu­rroughs.html
  6. Burroughs Corporation (Wikipedia)
    http://en.wiki­pedia.org/wiki/Bu­rroughs_Corpo­ration
  7. Adding machine (Wikipedia)
    http://en.wiki­pedia.org/wiki/Ad­ding_machine
  8. Burroughs B-205
    http://www.an­gelfire.com/sci­fi/B205/
  9. Burroughs 205 Hardware Package Design
    http://tjsawy­er.com/B205Pkg­.htm
  10. ERA 1101 Documents
    http://ed-thelen.org/comp-hist/ERA-1101-documents.html
  11. Ukázkový program pro UNIVAC 1101/ERA 1101
    https://wiki.cc­.gatech.edu/fol­klore/index.php/En­gineering_Rese­arch_Associates_an­d_the_Atlas_Com­puter_(UNIVAC_1101)
  12. UNIVAC I Computer System
    http://univac1­.0catch.com/
  13. UNIVAC I Computer System
    http://univac1­.0catch.com/y­ellowpage.htm
  14. UNIVAC (Wikipedia)
    http://en.wiki­pedia.org/wiki/U­nivac
  15. UNIVAC I (Wikipedia)
    http://en.wiki­pedia.org/wiki/U­NIVAC_I
  16. UNIVAC II – Universal Automatic Computer Model II
    http://ed-thelen.org/comp-hist/BRL61-u4.html
  17. UNIVAC II (Wikipedia)
    http://en.wiki­pedia.org/wiki/U­NIVAC_II
  18. UNIVAC III (Wikipedia)
    http://en.wiki­pedia.org/wiki/U­NIVAC_III
  19. UNIVAC 1101 (Wikipedia)
    http://en.wiki­pedia.org/wiki/U­NIVAC_1101
  20. UNISYS History Newsletter
    https://wiki.cc­.gatech.edu/fol­klore/index.php/Ma­in_Page
  21. UNIVAC Solid State (Wikipedia)
    http://en.wiki­pedia.org/wiki/U­NIVAC_Solid_Sta­te
  22. Bi-quinary coded decimal (Wikipedia)
    http://en.wiki­pedia.org/wiki/Bi-quinary_coded_de­cimal
  23. UNIVAC III Data Processing System
    http://ed-thelen.org/comp-hist/BRL61-u4.html#UNIVAC-III
  24. The UNIVAC III Computer
    https://wiki.cc­.gatech.edu/fol­klore/index.php/The_U­NIVAC_III_Com­puter
  25. UNIVAC III Photos
    http://jwstep­hens.com/univac3/pa­ge01.htm
  26. A History of Unisys Computers (kniha)
    http://www.lu­lu.com/produc­t/hardcover/a-history-of-unisys-computers/4627477
  27. UNIVAC III Instructions Reference Card
    http://www.bit­savers.org/pdf/u­nivac/univac3/UT-2455_UNIVACII­I_RefCd61.pdf
  28. Index register (Wikipedia)
    http://en.wiki­pedia.org/wiki/In­dex_register
  29. FLOW-MATIC, COBOL's Roots, Birth of COBOL…
    http://www.inf.fu-berlin.de/leh­re/SS01/hc/pl/co­bol.htm
  30. FLOW-MATIC
    http://en.wiki­pedia.org/wiki/FLOW-MATIC
  31. FLOW-MATIC Manual
    http://archive­.computerhisto­ry.org/resources/tex­t/Remington_Ran­d/Univac.Flow­matic.1957.102646140­.pdf
  32. Grace Murray Hopper
    http://cs-www.cs.yale.e­du/homes/tap/Fi­les/hopper-story.html
  33. Grace Hopper
    http://en.wiki­pedia.org/wiki/Gra­ce_Hopper
  34. Biographies of Women Mathematicians: Grace Murray Hopper
    http://www.ag­nesscott.edu/lrid­dle/women/hop­per.htm
  35. A-0 System
    http://en.wiki­pedia.org/wiki/A-0_programming_lan­guage
  36. Rosetta Code – Category:COBOL
    http://rosetta­code.org/wiki/Ca­tegory:COBOL
  37. COmmon Business Oriented Language
    http://foldoc­.org/COBOL
  38. COBOL Compilers
    http://www-01.ibm.com/sof­tware/awdtool­s/cobol/
  39. Cobol: Not Dead Yet
    http://www.com­puterworld.com/s/ar­ticle/266156/C­obol_Not_Dead_Y­et?intsrc=kc_rfavs
  40. The future's bright … the future's Cobol
    http://features­.techworld.com/ap­plications/3056/the-futures-bright–the-futures-cobol/
  41. COBOL Example Programs
    http://www.csis­.ul.ie/COBOL/e­xamples/defau­lt.htm
  42. Introduction to COBOL
    http://www.csis­.ul.ie/COBOL/Cou­rse/COBOLIntro­.htm
  43. COBOL programming – tutorials, lectures, exercises, examples
    http://www.csis­.ul.ie/COBOL/
  44. Wikipedia: COBOL
    http://en.wiki­pedia.org/wiki/CO­BOL
  45. Humor on Computers, Systems and Programming
    http://www-crypto.htw-saarland.de/we­ber/misc/program­ming.html
  46. OpenCOBOL
    http://en.wiki­pedia.org/wiki/O­penCOBOL
  47. OpenCOBOL.org
    http://openco­bol.org/
  48. OpenCOBOL FAQ
    http://openco­bol.add1tocobol­.com/
  49. TinyCOBOL
    http://tiny-cobol.sourcefor­ge.net/
  50. TinyCOBOL FAQ
    http://tiny-cobol.sourcefor­ge.net/docs/faq/
  51. JTC1/SC22/WG4 – COBOL
    http://ra.dku­ug.dk/jtc1/sc2­2/wg4/
  52. COBOL on COGS
    http://www.co­boloncogs.org/IN­DEX.HTM
  53. Cobol Coders: Going, Going, Gone?
    http://www.com­puterworld.com/s/ar­ticle/266228/C­obol_Coders_Go­ing_Going_Gone_
  54. BUNCH
    http://en.wiki­pedia.org/wiki/BUN­CH
  55. The Colossus That Works
    http://www.ti­me.com/time/ma­gazine/article/0,9171,9­49693–5,00.html
  56. Mainframe computer
    http://en.wiki­pedia.org/wiki/Ma­inframe_compu­ter
  57. United States Census Bureau
    http://en.wiki­pedia.org/wiki/U­nited_States_Cen­sus_Bureau
  58. Slideshow – More Core Memories
    http://spectrum­.ieee.org/com­puting/hardwa­re/slideshow-more-core-memories
  59. UNIVAC I Mercury Delay Line Memory
    http://ed-thelen.org/comp-hist/vs-univac-mercury-memory.html
  60. Digital Number System Part-III
    http://www.asic-world.com/digi­tal/numbering3­.html
  61. Excess-3 – Definition
    http://www.wor­diq.com/defini­tion/Excess-3
  62. Excess-3
    http://en.wiki­pedia.org/wiki/Ex­cess-3
  63. Method of complements
    http://en.wiki­pedia.org/wiki/Met­hod_of_comple­ments
  64. Univac documentation
    http://www.bit­savers.org/pdf/u­nivac/univac1/
  65. UNISERVO
    http://en.wiki­pedia.org/wiki/U­NISERVO
  66. John Mauchly
    http://en.wiki­pedia.org/wiki/Joh­n_Mauchly
  67. J. Presper Eckert
    http://en.wiki­pedia.org/wiki/J­._Presper_Eckert
  68. BINAC
    http://en.wiki­pedia.org/wiki/BI­NAC
  69. Delay line memory
    http://en.wiki­pedia.org/wiki/De­lay_line_memo­ry
  70. Paměť se zpožďovací linkou
    http://cs.wiki­pedia.org/wiki/Pa­měť_se_zpožďo­vací_linkou
  71. Description of the BINAC
    http://www.pa­losverdes.com/las­thurrah/binac-description.html
  72. UNIVersal Automatic Computer
    http://www.thoc­p.net/hardware/u­nivac.htm
  73. IBM 36-bit computers
    http://www.36bit­.org/ibm/
  74. Symbolics 36-bit computers
    http://www.36bit­.org/symbolic­s/
  75. IBM System 360/370 Compiler and Historical Documentation
    http://www.edel­web.fr/Simula/
  76. Who Was Who in IBM's Programming Research? Early FORTRAN Days
    http://www.tra­iling-edge.com/~bob­bemer/PRORES.HTM
  77. Control Data Corporation (CDC) 6600: 1966–1977
    http://www.cis­l.ucar.edu/com­puters/gallery/cdc/6600­.jsp
  78. Control Data Corporation (CDC) 7600: 1971–1983
    http://www.cis­l.ucar.edu/com­puters/gallery/cdc/7600­.jsp
  79. Cray History
    http://www.cra­y.com/About/His­tory.aspx?404;http:­//www.cray.com:80/a­bout_cray/his­tory.html
  80. Cray Historical Timeline
    http://www.cra­y.com/Assets/PDF/a­bout/CrayTime­line.pdf
  81. Company: Cray Research, Inc. (Computer History)
    http://www.com­puterhistory.or­g/brochures/com­panies.php?al­pha=a-c&company=com-42b9d5d68b216
  82. PDP-1 Web Pages
    http://www.pdp-1.org/
  83. PDP-1 Restoration Process
    http://pdp-1.computerhis­tory.org/pdp-1/
  84. Programmed Data Processor
    http://en.wiki­pedia.org/wiki/Pro­grammed_Data_Pro­cessor
  85. Digital Equipment Corporation
    http://en.wiki­pedia.org/wiki/Di­gital_Equipmen­t_Corporation
  86. PDP-1
    http://en.wiki­pedia.org/wiki/PDP-1
  87. Ancient Computing Machinery
    http://www.ee­.ryerson.ca/~el­f/ancient-comp/index.html
  88. Spacewar – The first computer video game. Really!
    http://www3.sym­patico.ca/mau­ry/games/space/spa­cewar.html
  89. Programmed Data Processor-1 Handbook
    http://www.dbit­.com/~greeng3/pdp1/pdp1­.html
Našli jste v článku chybu?
Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

Lupa.cz: Jak udělat formulář, aby ho vyplnil i negramotný?

Jak udělat formulář, aby ho vyplnil i negramotný?

Podnikatel.cz: I vám můžou vykrást značku. Braňte se

I vám můžou vykrást značku. Braňte se

DigiZone.cz: RRTV: frekvence pro Country Radio

RRTV: frekvence pro Country Radio

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

DigiZone.cz: Regionální tele­vize CZ vysílá "Mapu úspěchu"

Regionální tele­vize CZ vysílá "Mapu úspěchu"

Lupa.cz: Proč jsou firemní počítače pomalé?

Proč jsou firemní počítače pomalé?

Lupa.cz: Odkazy na pirátský obsah mohou být nelegální

Odkazy na pirátský obsah mohou být nelegální

DigiZone.cz: Budoucnost TV vysílání ve Visegrádu

Budoucnost TV vysílání ve Visegrádu

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

Podnikatel.cz: Udělali jsme velkou chybu, napsal Čupr

Udělali jsme velkou chybu, napsal Čupr

Vitalia.cz: Tahák, jak vyzrát nad zápachem z úst

Tahák, jak vyzrát nad zápachem z úst

Lupa.cz: Adblock Plus začal prodávat reklamy

Adblock Plus začal prodávat reklamy

Vitalia.cz: Jak Ondra o astma přišel

Jak Ondra o astma přišel

Vitalia.cz: Tohle všechno se dá usušit

Tohle všechno se dá usušit

Vitalia.cz: Muž, který miluje příliš. Ženám neimponuje

Muž, který miluje příliš. Ženám neimponuje

Vitalia.cz: Výživový poradce: Tyhle fešáky jedu celoročně

Výživový poradce: Tyhle fešáky jedu celoročně

Měšec.cz: „Ukradli“ jsme peníze z bezkontaktních karet

„Ukradli“ jsme peníze z bezkontaktních karet

120na80.cz: Galerie: Čínští policisté testují českou minerálku

Galerie: Čínští policisté testují českou minerálku

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?