Zpět na domů

Programma 101: paměť a programovací jazyk

Olivetti Programma 101 — programovatelný kalkulátor z roku 1965 s 240 bajty magnetostrukční paměti a jazykem na základě registrů. Podpora režimů full/split, přechodů a větvení. Rozbor architektury pro technické specialisty.

P101: první osobní počítač v detailech
Advertisement 728x90

Olivetti Programma 101: architektura a programování prvního osobního počítače

**Olivetti Programma 101 (P101), uvedený na trh v roce 1965, byl jedním z prvních programovatelných kalkulátorů, který si nárokoval status osobního počítače. Zařízení o hmotnosti 36 kg využívalo diskrétní tranzistorovou logiku, magnetostrikční paměť o kapacitě 240 bajtů a programovací jazyk založený na registrech. Prodej pokračoval až do roku 1972 za cenu 3200–3500 dolarů, což z něj učinilo masový produkt před příchodem HP 9100A.

Design a ergonomie

P101 se vyznačoval kompaktností srovnatelnou s psacím strojem a futuristickým designem od Maria Belliniho. Vývoj vedl tým Piera Giorgia Perotta od roku 1962 podle principů jednoduchosti, ergonomie a estetiky. Klávesnice obsahovala 37 tlačítek, kolečko pro nastavení desetinné čárky (0–15 míst) a tři zámkové klávesy: záznam programu, tisk a odemčení.

Výstup zajišťoval bubnový tiskárna (30 znaků/s) na standardní papírové pásce. Tiskly se 22místná čísla se znaménkem, desetinnou čárkou a služebními znaky. Indikace: modrá – připravenost, blikající – provádění, červená – chyba (přetečení, dělení nulou).

Google AdInline article slot

Architektura paměti

Paměť založená na magnetostrikční zpožďovací lince (drát 6,5 m) poskytovala 240 bajtů. Deset registrů po 24 bitech s pevnými rolemi:

  • M (Median): vstup a mezisoučet.
  • A (Akumulátor): výsledek operací s zaokrouhlením.
  • R (Výsledky): úplný výsledek nebo zbytek.
  • B, C: ukládání dat, dělení na poloregistry.
  • D, E, F: data nebo instrukce, dělení na poloregistry.
  • p1, p2: pouze instrukce.

Registry B–F podporovaly režimy full (22 číslic + znaménko/čárka nebo 24 instrukcí) a split (11 číslic/12 instrukcí na poloregistr, označeno jako F/ = f). Minimální program – 48 instrukcí (p1+p2), maximum – 120 (D+E+F+p1+p2).

Strojová logika sledovala režimy: chyba při přenosu >11 míst do split-registru nebo dělení plného.

Google AdInline article slot

Programovací jazyk

Jazyk – zjednodušený assembler s matematickými, výměnnými, služebními operacemi, skoky. Žádné tlačítko "rovná se".

Matematické operace

| Tlačítko | Popis |

|--------|----------|

Google AdInline article slot

| + - × | A ±× M → A (zaokrouhleno), R (úplně) |

| : | A / M → A (zaokrouhleno), R (zbytek) |

| √ | A = √M, M = 2√M |

| Registr + - × : √ | Zkopíruje registr do M, aplikuje operaci |

| A ↕ | |A| v A |

Výměna dat

  • Registr ↑ (kromě A,R): M → registr.
  • Registr ↓: registr → A.
  • Registr ↕: výměna A ↔ registr (R ↕ = R ↓).
  • / ↕: desetinná část A → M.
  • R S: výměna R ↔ D.

Služební

  • S: pauza/pokračování, vstup do M.
  • Registr ◊: tisk registru.
  • Registr * (kromě M,R): vynulování.

Split-režim se aktivuje příkazem s /, full – vymazáním (B * pro B).

Systém skoků

32 instrukcí: 16 nepodmíněných (? CV? D? R? → A? B? E? F?), 16 podmíněných (/ před odesláním, skok pokud A > 0). Symboly V,W,Y,Z kódují vazby odeslání-cíl.

Co je důležité

  • P101 zavedl osobní počítač jako kompaktní zařízení na stůl.
  • Magnetostrikční paměť 240 bajtů s flexibilními registry (full/split).
  • Jazyk se skoky a větvením pro algoritmy.
  • Ergonomie: tiskárna, indikace, jednoduchá klávesnice.
  • Vliv: HP platila licence za patenty.

— Editorial Team

Advertisement 728x90

Číst dál