Texas Instruments SR-52
A számológép architekturáját tekintve hasonló az 1974-ben megjelent SR-50-essel: főbb alkotóelemei ugyanazok. Az SR-52-esben 7 db, a TMC0501 családba tartozó specializált chip dolgozik.
A Hewlett-Packard válasza a HP-67-es zseb-, illetve a HP-97-es, nyomtatóval kiegészített asztali számológép lett, melyek 1976-tól készültek. Az egyre többet tudó, ezáltal a zsebszámológépek korlátait feszegető, és így egyre körülményesebben használható programozható számológépeket végül az 1980-as évek elején felváltották a BASIC nyelven programozható zsebszámítógépek.
Gyártó: | Texas Instruments (USA) |
Gyártási év: | 1975-77 |
Méret: | 8,3×16,3×4,3 cm |
Tömeg üzemkészen: | 360 g |
Jelleg: | programozható tudományos |
Kapacitás: | 10/10+2 számjegy (bevitel és kijelzés) 12/12+2 számjegy (belső pontosság) |
Működési mód: | AOS |
CPU: | Texas Instruments TMC0501NL + TMC0524NL |
Regiszterek: | 4 általános (művelet-tárolással) 9 zárójel (művelet-tárolással) 20 memória (aritmetikával) 5 jelző |
Jellemzők: | +/-előjelváltás (negatív számok közvetlen beírása) Flebegőpontos számkijelzés Fixfixpontos számkijelzés: a felsorolt számoknak megfelelő számú tizedesjegyek kijelzése (0-8) Scitudományos (exponenciális) számkijelzés Sqrnégyzetgyökvonás x2négyzetreemelés pipi (3,1415..) értéke behívható 1/xreciprokszámítás trigtrigonometrikus függvények (sin, cos, tg és ezek inverzei: arc sin, arc cos, arc tg) DMS-DDdecimális és 60-as szögek/időpontok átváltása logexponenciális és logaritmusfüggvények (10-es és e-alapú) yxhatványozás P-Rkoordináta-átszámítások derékszögű és poláris koordinátarendszerek között n!faktoriális számítása |
Kijelző: | 10+2+2 digites LED (Texas Instruments 234G) |
Tápellátás: | BP-1 akkucsomag AC9200 adapter |
Programozási mód: | billentyűkód-tárolású |
Programkapacitás: | 224 billentyűlenyomás |
Teszteredmények: | trigonometriai:az arcsin(arccos(arctg(tg(cos(sin(60°)))))) eredménye, referenciaérték: 60. 60.0000145691 exponenciális:a 0.999160000 eredménye, referenciaérték (első 14 jegye): 3.0068804206375×10-70 3.00688046081E-70 |
A gép használata
A gép használata főbb vonalakban megegyezik elődeivel (SR-50(A), SR-51(A)), így csak a különbségeket és a gép programozását ismertetjük.A kijelzési formátum az EE gomb lenyomása után, illetve másképpen nem kijelezhető számok esetén exponenciális. Ezt visszavonni az INV EE gombok lenyomásával lehet. Fixpontos kijelzést a 2nd fix és a kívánt tizedeseknek megfelelő szám (0..8) lenyomásával kérhetünk. Lebegőpontos kijelzésre a 2nd fix 9 lenyomásával térhetünk át.
Az SR-52-es 20 memóriaregiszterrel (00-19) rendelkezik, ezek használata azonos a megszokottal. A közvetlen (direkt) címzés mellett (amikor a memória-utasítás után megadjuk a memóriaregiszter számát) itt azonban lehetőség van közvetett (indirekt) címzésre is, ahol nem a megadott memóriaregiszterrel, hanem a memóriaregiszterben tárolt számú memóriaregiszterrel végezhetjük el a kívánt műveletet. Ezek a memória-utasítások előtt lenyomott 2nd IND gombokkal idézhetők elő. Például: a 02-es memóriaregiszterben tároljuk a 16-os számot. A 2nd IND SUM 02 lenyomására a 02-es memóriaregiszter által címzett 16-os memóriaregiszter tartalmát szorozzuk meg a kijelzőben lévő számmal.
Programozási üzemmódba, illetve vissza a számolási üzemmódba az LRN billentyűvel juthatunk. A kijelzés ilyenkor megváltozik: a bal oldali szám az aktuális programszámlálót, a jobb oldali szám pedig az ott tárolt utasításkódot, azaz billentyűkódot mutatja. Az egyes billentyűk kódjai a billentyű elhelyezkedésének megfelelően alakulnak: első számjegyük a sor, második az oszlop számát mutatja. A 2nd billentyűvel előhívható funkciók oszlopszámaihoz 5-öt hozzá kell adni, az utolsó oszlopnál azonban 5-öt ki kell vonni: a CLR kódja 25 (2. sor 5. oszlop), az 1/x funkció kódja a 2nd CLR billentyűzésnek megfelelően 20 lesz. Az INV billentyű külön utasításként tárolódik.
Programozási üzemmódban a lenyomott billentyűk az aktuális programszámlálónak megfelelő pozícióban lévő utasításkódokat felülírják. A programba üres utasításhelyeket az INS billentyűvel szúrhatunk be, míg a felesleges lépéseket a 2nd del gombokkal törölhetjük. A programszámlálót az SST billentyűvel előre, a 2nd bst billentyűkkel egy lépéssel visszafelé állíthatjuk, így a következő vagy az előző utasításra ugorhatunk.
A programrészek megjelölésére címkéket használhatunk. A számbillentyűk és a programszerkesztő billentyűk kivételével bármelyik gombot, illetve másodlagos funkcióikat (a 2nd lenyomásával előhívható funkcióikat) használhatjuk címkeként. A címke megadása a 2nd LBL és a megfelelő címkebillentyű lenyomásával történik. 10 közvetlen címkét is használhatunk (A..E, ill. 2nd A..E), melyek számolási üzemmódban lenyomva, automatikusan az adott címkétől indítják el a programot. A többi címkére a GTO és a címke billentyűjének lenyomásával ugorhatunk, a program futtatása az aktuális programszámlálótól a RUN billentyűvel indítható. A 2nd rset funkció a programszámlálót 0-ra állítja, törli a jelzőbiteket és az alprogram-számlálót is.
A program futását a HLT utasítással lehet megszakítani, ugyanez történik, ha futás közben nyomjuk meg a HLT gombot. A megszakított program a RUN billentyű lenyomására folytatódik.
Ugróutasítás a GTO billentyűvel helyezhető el: ha utána egy háromjegyű szám következik, akkor az adott számú programlépésre, ha egy másik gomb, akkor az adott címkére történik a vezérlés átadása. Ugyanezen gomb használható a számolási üzemmódban a programszámláló beállítására, illetve egy adott címkére való ugrásra.
Alprogramok készítésére is van mód, az alprogramok pedig egy alkalommal egymásba is ágyazhatók. Az alprogramra ugrás utasítását az SBR billentyűvel programozzuk: utána vagy a kívánt sor számát, vagy a címkéjének billentyűjét kell megadnunk. Az alprogramból a főprogramba, vagy a hívó alprogramba a 2nd rtn utasítással ugorhatunk vissza.
A programfutás vezérlésére 5 db jelzőbit (0..4) is rendelkezésünkre áll, ezek szabadon állíthatók be igaz, avagy beállított (2nd st flg és a jelző száma), illetve hamis, avagy törölt értékre (2nd INV st flg és a jelző száma).
Feltételes elágazások programozására tízféle utasítás használható. Mindegyikük közös vonása, hogy a vizsgált feltétel igaz volta esetén hajtja végre a paraméterként megadott címre vagy címkére való ugrást, ellenkező esetben a következő utasításra lép. A feltételek: egy adott jelző beállított (igaz) volta (2nd if flg és a jelző száma); egy adott jelző törölt (hamis) volta (2nd INV if flg és a jelző száma); hibajelzés megléte (2nd if err), illetve hiánya (2nd INV if err); a kijelzett érték (X regiszter) pozitív (2nd if pos), vagy negatív (2nd INV if pos) volta; illetve annak vizsgálata, hogy a kijelzett szám egyenlő-e 0-val (2nd if zro), avagy nem egyenlő 0-val (2nd INV if zro). Mindegyik utasítást az ugrási cím vagy címke billentyűzése követi.
A kilencedik és tizedik utasítással ciklusok szervezhetők: ezek a 0. memóriaregiszter értékét csökkentik (2nd dsz), illetve növelik (2nd INV dsz), majd ezután megvizsgálják, hogy a 0. memóriaregiszter tartalma egyenlő-e 0-val. Ha nem, akkor végrehajtják az utasítás paramétereként megadott címre, vagy címkére való ugrást, ha azonban igen, kilépve a ciklusból, a következő utasítással folytatják a program végrehajtását.
A memóriaregisztereknél megismert közvetett címzés itt is használható: itt azonban az ugrási címet adhatjuk meg közvetve úgy, hogy a 2nd IND használatával annak a memóriaregiszternek a címét adjuk meg, mely az ugrási címet tárolja. Például ha a 16-os memóriaregiszterben a 224-es szám van, akkor a 2nd IND 2nd if zro 16 utasítás a kijelzőben lévő 0 hatására a 16-os memóriaregiszterben tárolt címre, azaz a 224-es lépésszámra adja át a vezérlést.
A programok mágneskártyára rögzítése a CLR 2nd INV read utasítással történik. Mivel a mágneskártya egy oldalán csak 112 programlépés tárolható, a mágneskártya megfordítása után a 112-223. programlépések is felírhatók a 2nd INV read gombok lenyomásával. Hasonló módon olvashatjuk be a kártyákon tárolt programokat: az előoldalt a CLR 2nd read, majd szükség esetén a hátoldalt a 2nd read billentyűk lenyomásával.
A géphez csatlakoztatott PC-100 típusú nyomtatót speciális utasításokkal vezérelhetjük: a kijelzett értéket kinyomtatni a 2nd prt, soremelést végezni a 2nd pap gombokkal tudunk. Az aktuális programszámlálótól kezdődően a program kilistázható a 2nd list lenyomására, melyet szükség esetén a HLT billentyű lenyomásával tudunk megszakítani. A nyomtatón lévő PRINT, ADV gombok a 2nd prt, ill. 2nd pap gombokkal előhívható műveleteket hajtják végre. A TRACE nyomókapcsoló bekapcsolt állapotában a gép minden egyes programlépést és a kijelzett eredményt kinyomtatja, így ez a mód előnyösen alkalmazható hosszabb programok hibakeresésénél, "belövésénél".