Híradástechnika PTK-1060
Az eredeti B3-21 típus volt az első szovjet programozható számológép. 1975-ben indult meg a fejlesztése, majd 1977-től 1982-ig gyártották. Egyike azoknak a kevés szovjet számológépeknek, melyeket teljes egészében szovjet mérnökök fejlesztettek ki, így nem is hasonlít semmilyen nyugati készülékre. Egyes részleteiben felfedezhetők nyugati típusok jellemvonásai, de az architektúra, a működési elv teljesen egyedi. Kezdetben Hewlett-Packard import LED kijelzőkkel épült, később szovjet változatra cserélték őket, de igen nagy áramfelvételük miatt hamar áttértek a vákuumfluoreszcens kijelzőcsövek felhasználására. A HP számológépekben megszokott fordított lengyel logika (RPN) itt is megjelent, viszont működése eltért a megszokottól.
Gyártó: | Híradástechnika Szövetkezet (Magyarország) |
OEM: | Калькулятор (Kalkulátor) (Szovjetunió) |
OEM típus: | Электроника Б3-23 |
Gyártási év: | 1977 |
Méret: | 10×18,5×4 cm |
Tömeg üzemkészen: | 377 g |
Jelleg: | programozható tudományos |
Kapacitás: | 8/8+2 számjegy (bevitel és kijelzés) 8+2 számjegy (belső pontosság) |
Működési mód: | egyedi |
CPU: | Kvazar K145IK502P |
Regiszterek: | 2 általános 7 memória (aritmetika nélkül) |
Jellemzők: | +/-előjelváltás (negatív számok közvetlen beírása) RVregisztercsere (X-Y) Flebegőpontos számkijelzés 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) logexponenciális és logaritmusfüggvények (10-es és e-alapú) yxhatványozás |
Kijelző: | 15 digites LED (HP) |
Tápellátás: | 4×D0,55Sz akkumulátor |
Programozási mód: | összevont billentyűkód-tárolású |
Programkapacitás: | 60 lépés |
Teszteredmények: | trigonometriai:az arcsin(arccos(arctg(tg(cos(sin(60°)))))) eredménye, referenciaérték: 60. - exponenciális:a 0.999160000 eredménye, referenciaérték (első 14 jegye): 3.0068804206375×10-70 2.731791E-70 |
A gép felépítése
A PTK-1060-as számológép a B3-21-es sorozat korai szériájából készült. Különbség csak az alkalmazott feliratokban van. Sajnos a magyar (angol) feliratozás elveszítette egyik lényeges vonását: azt, hogy melyik felirat melyik váltóbillentyűvel hívható le. Ellenben bizonyos funkcióbillentyűk feliratai beszédesebbek az eredetinél: a sárga váltó P/MS felirata, valamint a barna váltó F/MR felirata utal a billentyűk memóriaregiszterekkel való felhasználhatóságára. Érdekesség, hogy az eredeti szovjet és a latinbetűs változat közös gombjai az eredeti, két különböző műanyagból öntött darabok, míg a csak a PTK-1060-ason lévő latinbetűs gombokra a feliratot egyszerűen ráfestették.A gépek mechanikai konstrukciója meglepően jó minőségű, ugyanez mondható el a nyomtatott áramkörökre is. Utóbbiból kettő, szinte a teljes dobozméretet elfoglaló darab található, az alsó tartalmazza a számológép négy fő integrált áramkörét: a K145IK501P/502P/503P jelű kalkulátor-áramkörkészletet, valamint a K145IR1 jelű RAM tokot, míg a felső áramkör a Klixon-rendszerű billentyűzetet és a kijelzőket.
A számológépben lévő áramkörkészlet érdekes felépítésű: a fő áramkör a K145IK502P jelű, melyhez csatlakozik a billentyűzet és a kijelző, illetve a K145IK501P és K145IK502P jelű hasonló áramkör, melyek itt csak ROM-ként funkcionálnak: az 501P az alapműveleteket és az F/MR gombbal hívható függvényekhez, az 502P pedig a többi, jellemzően tudományos funkciókhoz tartozó mikroprogramokat tárolja. Az egyes chipek soros módon kommunikálnak egymással - ennek és az órajel frekvenciájának köszönhető a gépek meglehetős lassúsága.
Ha minden digiten megjelenik a tizedespont, a gép akkumulátora lemerült.
Az eredeti BP2-3 típusjelű töltőkészülék két feszültségszinttel dolgozik: az alsó kapcsoló Z (zarjadka, töltés) állásában nagyobb feszültséget kap a készülék, ez az üzemmód szolgál az akkumulátorok töltésére. Legfeljebb 15 órán át tölthető ilyen módon, meghibásodás nélkül. Egyébként mindig vissza kell kapcsolni R (rabota, munka) állásba, mely a gép töltés nélküli működtetésére szolgál.
A gép használata
A PTK-1060-as 8+2 számjegyes számokkal dolgozik, mindennemű védődigit nélkül. Mivel az alkalmazott kijelzőkben a tizedespont a számon belül nyert elhelyezést, az értelmezhető jelzéskép miatt a tizedespont egy teljes digitet elfoglal. Hasonlóan más Kalkulátor-gyártású gépekhez (pl. Elektronika B3-14M), a kijelzés mindig 8 digites, így ha a tizedespont nem az utolsó helyen van, akkor csak 7 értékes jegy kerül kijelzésre attól függetlenül, hogy hány értékes számjeggyel számol a gép.A billentyűk feliratozása nem egyértelmű. A funkciók különválasztása az alapján történt, hogy melyik chip végzi el az adott műveletet. Meg kell tanulni, hogy melyik funkcióbillentyű hívja meg az adott funkciót. Az eredeti konstrukcióban az adott funkcióbillentyűvel együtt lenyomható gombokat színes keretek jelölték, sajnos a magyar változatba ezek nem kerültek át.
A veremtár
A gép szervezése fordított lengyel logika szerinti, azaz minden műveletet az operandus(ok) bevitele után kell előírni. A hagyományos értelemben vett veremtár csak kétszintű, az X és az Y regiszterekből áll. A beírás és az X regiszter Y regiszterbe átléptetése itt is az ENTER (felfelé mutató nyíl) gombbal történik, de bizonyos műveletek (pl. memóriából kiolvasás) nem léptetik automatikusan a veremtárat, egyszerűen felülírják az X regiszter tartalmát. A műveletek nagyrészének elvégzése után az Y regiszter tartalma megmarad, így konstansként való felhasználásra alkalmas, pl: 6 × 8 × 8 × 8 beírható így: 8 ENTER 6 × × ×.A két regiszter tartalmát az x<>y billentyűvel cserélhetjük fel. A P/MS váltóbillentyűvel elérhető ROLL le és ROLL fel funkciók egy másik veremtárat, a 6 regiszterből (S1-S6 jelűek) álló programszámláló-tárolót forgatják gyűrű-szerűen az óramutatóval megegyező, illetve azzal ellentétes irányban, az X regiszter közbeiktatásával.
Memóriaregiszterek
A gép 9 regiszterrel rendelkezik, ebből a 0. számú azonos az X, míg az 1. számú az Y regiszterrel. A P/MS után lenyomott számbillentyűvel az adott számú memóriaregiszterbe tudjuk tárolni a kijelzőben lévő (X) számot, míg az F/MR gomb után lenyomott számbillentyűvel az adott számú memóriaregiszterből tudjuk kiolvasni a tárolt számot. Érdekesség: a P/MS 0 gombsorozat az X regiszter tartalmát eltárolja az X regiszterbe, a P/MS 1 pedig az Y regiszterbe, így az utóbbi gombsorozat végsősoron az ENTER gombbal egyenértékű. Szabadon felhasználhatóak a 2-től 8-ig terjedő regiszterek.Memóriából való kiolvasás után, ha a kiolvasott számot fel szeretnénk használni kétváltozós műveletekhez, az ENTER lenyomása is szükséges, mivel az előhívási funkció a szokottól eltérő módon, nem végzi el ezt automatikusan.
Műveletek elvégzése
Fontos, hogy a két trigonometrikus függvény radiánban megadott értékekkel számol, így a fokokban megadott szögértékeket előbb át kell számítani radiánba. A szinusz a P/MS sin, a koszinusz a P/MS cos billentyűzéssel számítható.A természetes logaritmus (ln) és az exponenciális függvény (ex) a szokott módon működik, a P/MS és a ln, ill. ex gomb lenyomásával.
A kétváltozós műveleteket közül az alapműveletek végzése az RPN-gépeknél megszokott módon történik, tehát az első bevitelt az ENTER-rel kell lezárni, minden továbbit pedig a szükséges művelet billentyűjével. A műveleti billentyűk után megkezdett új bevitel automatikusan elvégzi az ENTER billentyű funkcióját. Fontos, hogy a műveletek elvégzése után az Y regiszterben mindig megmarad a korábbi tartalom, így az esetlegesen újra felhasználható, ismételt összeadásra vagy szorzásra is.
A hatványozás a szokottól eltérően végződik el, előbb a kitevőt, majd az alapot kell beléptetni a veremtárba (pl. 23-hoz 3 ENTER 2 xy billentyűzés szükséges), mely annyi haszonnal bír, hogy az ismételt hatványozás könnyen elvégezhető az Y regiszter változatlanul hagyásának következményeként.
A túlcsordulást a mantissza előjelének helyén egy 0-ás számjeggyel jelzi ki, emellett látható az utoljára bevitt szám. A számítás minden további nélkül folytatható, illetve helyesbíthető.
A gép programozása
Programírási üzemmódba a P/MS PRGM billentyűkkel jutunk. A kijelző jobb oldalán látható kétjegyű szám a programmutató. A programtár 10 lapra van felosztva, laponként 6 programlépést tárolhatunk. A programmutató is ez alapján jelzi ki az aktuális pozíciót, az első jegy a programtár lapjának számát (0-9), a második a lapon belüli lépés számát jelzi (0-5). A kijelzett címen lévő kód nem látszik sosem, a kijelző bal oldalán az eggyel, utána a kettővel, majd a hárommal kisebb címen lévő utasításkód látható, tehát a program olvasása jobbról balra történik. Részben összevont billentyűkód-tárolású gép lévén a két funkcióbillentyűvel hívható műveletek kódjai egyetlen programlépést foglalnak el, de a billentyűkombinációkhoz tartozó kódok sajnos a huzalozást követik, nyoma sincs a megszokott sor-oszlop kombinációkhoz. A programszerkesztés gombjai a következők:STEP> - a programtárban egy lépéssel előbbre lép, a kijelzés is ezt követi.
<STEP - a programtárban egy lépéssel visszalép.
P/MS NOP - az aktuális címre egy üres (NOP - No Operation, Nyet Operacii) utasítást tárol el.
A programból törölni csak a NOP utasítás elhelyezésével, vagy a gép kikapcsolásával tudunk.
A program végén RUN/STOP gomb megnyomása is szükséges.
Kód | Címként | Billentyű |
01 | 00 | P/MS 0 |
02 | 01 | F/MR 0 |
03 | 02 | P/MS eix |
04 | 03 | 0 |
05 | 04 | F/MR ENTER |
06 | 05 | ENTER |
11 | 10 | P/MS 1 |
12 | 11 | F/MR 1 |
13 | 12 | P/MS ln |
14 | 13 | 1 |
15 | 14 | F/MR x<->y |
16 | 15 | x<->y |
21 | 20 | P/MS 2 |
22 | 21 | F/MR 2 |
23 | 22 | P/MS pi |
24 | 23 | 2 |
25 | 24 | F/MR × |
26 | 25 | × |
31 | 30 | P/MS 3 |
32 | 31 | F/MR 3 |
33 | 32 | P/MS ex |
34 | 33 | 3 |
35 | 34 | F/MR ÷ |
36 | 35 | ÷ |
37 | nem használható | F/MR xy* |
38 | nem használható | xy |
39 | nem használható | P/MS NOP |
41 | 40 | P/MS 4 |
42 | 41 | F/MR 4 |
43 | 42 | P/MS ROLL le |
44 | 43 | 4 |
45 | 44 | F/MR 1/x |
46 | 45 | , |
47 | nem használható | F/MR GTO 00* |
48 | nem használható | GTO 00 |
49 | nem használható | P/MS x>=0 |
51 | 50 | P/MS 5 |
52 | 51 | F/MR 5 |
53 | 52 | P/MS ROLL fel |
54 | 53 | 5 |
55 | 54 | F/MR x2 |
56 | 55 | /-/ |
57 | nem használható | F/MR GTO* |
58 | nem használható | GTO |
59 | nem használható | P/MS x=0 |
61 | 60 | P/MS 6 |
62 | 61 | F/MR 6 |
63 | 62 | P/MS EEX* |
64 | 63 | 6 |
65 | 64 | F/MR gyök x |
66 | 65 | EEX |
67 | nem használható | F/MR SST* |
68 | nem használható | SST |
69 | nem használható | P/MS x<0 |
71 | 70 | P/MS 7 |
72 | 71 | F/MR 7 |
73 | 72 | P/MS CLX* |
74 | 73 | 7 |
75 | 74 | F/MR CLX |
76 | 75 | CLX |
77 | nem használható | F/MR RUN/STOP* |
78 | nem használható | RUN/STOP |
79 | nem használható | P/MS x=/0 |
81 | 80 | P/MS 8 |
82 | 81 | F/MR 8 |
83 | 82 | P/MS cos |
84 | 83 | 8 |
85 | 84 | F/MR -* |
86 | 85 | - |
91 | 90 | P/MS 9 |
92 | 91 | F/MR 9 |
93 | 92 | P/MS sin |
94 | 93 | 9 |
95 | 94 | F/MR +* |
96 | 95 | + |
Ugrási utasítást a GTO gombbal helyezhetünk el a programban, de RUN üzemmódban is használható, ha nem a 00. címtől szeretnénk elindítani a programunkat. Az ugrási cím megadása szintén szokatlan: a címnél eggyel nagyobb kódú gomb lenyomásával lehet beállítani a címet a GTO megnyomása után. Pl. a 12. címre történő ugráshoz a 13-as kódú billentyűkombinációt kell lenyomni, az ln funkciót: GTO P/MS x<->Y. Ez a kijelzőn 13 58 sorrendben jelenik meg.
Feltételes elágazás programozásához négyféle utasítás használható, ezek az X regiszter és a 0 szám viszonyát vizsgálják: pl. a P/MS X<0 a negatív X értékekre ad igaz eredményt. Az utasítások működése pont a fordítottja a megszokottnak: ha a feltétel igaz, a program futása a következő utáni utasítással folytatódik, és ha hamis, akkor történik meg az ugrás az utasítás után, a GTO-nál már megismert módon programozott címre.
Ha az ugrási utasításokat szubrutin meghívásához használjuk, a visszatérési utasítást a GTO 00 gombbal helyezhetjük el a programban. 5 szint egymásbaágyazása lehetséges.
A program futtatása
A program indítása az aktuális programmutatótól a RUN/STOP gombbal történik. Egy adott címre ugyanúgy tudunk ugrani, mint ahogy a GTO utasítás programozásánál láttuk. A 00. címre a GTO 00 gombbal könnyen visszaugorhatunk.Lépésenkénti végrehajtás az SST gombbal történik.
Különlegességek
A gép képzetes számok exponenciális függvényének kiszámítására is alkalmas, mely gombot a kotangens, ill. tangens kiszámítására is felhasználhatunk.A P/MS eix gomb lenyomására a (radiánban megadott) X regiszter koszinusza az Y regiszterbe, szinusza pedig az X regiszterbe kerül.
Ha ezután lenyomjuk a ÷ gombot, megkapjuk a koszinusz és a szinusz érték hányadosát, azaz a kotangenst, ha pedig az x<->y ÷ gombokat nyomjuk le, a tangenst.