142 56 154MB
Hungarian Pages [540] Year 1964
A. I. Kitov
—
N. A. Krinyichij
E L E K T R O N IK U S D IGITÁLIS SZÁ M ÍTÓ G ÉPEK ÉS PROGRAM OZÁS Az új szám ítás- és vezérléstechnika alk alm azásánál nélkülözhetetlen m ű a gyors m űködésű gépek berendezé seinek
a la p já t
képező
aritm etik ai,
logikai és m űszaki elveket t artalm azza, v alam int a szovjet Sztrela, Urát és M -3 típ u sú gépek program ozásának m ódszertanát, am elyet példákkal gaz dagon szem léltet. N agy figyelm et for d ít to v á b b á a szovjet Urát és M -3 típ u sú so rozatgyártású gépek p rogra m ozásának sajátosságaira. Az em lí te t t gépekre vonatkozóan példaprog ram o k at is közöl. A k ö te t végén ta lá l juk Szelezsán Ján o s: A z Urál-2 elekt ronikus számítógép rövid ismertetése cím ű cikkét. A közérthetően, egy szerűen m egírt könyv az egyetem ek és főiskolák hallgatói, v alam in t a tu d o m ány és az ip a r különböző terü letein dolgozók szám ára készült. A p rogra mozással foglalkozó szakem berek ki képzéséhez ta n k ö n y v ü l szolgálhat.
A K A D É M IA I K IA D Ó B U D A PE ST
E L E K T R O N IK U S D IG ITÁ LIS S Z Á M Í T Ó G É P E K ÉS P R O G R A M O Z Á S
A. I. K I T O V — N. A. K R I N Y I C K I J
ELEKTRONIKUS DIGITÁLIS SZÁMÍTÓGÉPEK ÉS PROGRAMOZÁS
AKADÉMIAI
KIADÓ,
BUDAPEST
1964
Az eredeti m ű adatai
А. И. КИТОВ И H. А. КРИНИЦКИЙ
ЭЛЕКТРОННЫЕ ЦИФРОВЫЕ МАШИНЫ
И ПРОГРАММИРОВАНИЕ государственное издательство физико-математической литературы М о с к в а 1959
Fordította BACH IVÁN Lektorálta FREY TAMÁS a matematikai tudományok kandidátusa A fordítást ellenőrizte HANTOS LÁSZLÓ Lektorálta és szerkesztette HORVÁTH FERENC
© A kadém iai Kiadó, B udapest 1964
ELŐSZÓ Ezt a könyvet a szerzők eredetileg a Dzserzsinszkijről elnevezett Tüzér ségi Mérnöki Akadémia kiadásában megjelent A. I. K itov , N. А. К и ш и с к и és P . N. K omolov „A programozás elemei” c. könyv második kiadásának szán ták. Az elektronikus számítástechnika és a programozás, valamint szabályozástechnika területén mutatkozó jelentős előrehaladás azonban a szerzőket olyan könyv megírására késztette, hogy az a lehetőség szerint megfeleljen e területek fejlődési szintjének. Ez viszont a gyakorlatban új könyv megírásához vezetett. A könyvbe az elektronikus digitális gépek építési elveivel, a program logikai sémáinak átalakítási kérdéseivel és az önműködő programozással foglalkozó új fejezetek kerültek. Ezenkívül a könyv más fejezetei is lényegesen bővültek, nevezetesen az egycímű Urál gép leírásán kívül tartalmazza a háromcímű Sztrela gépet, és megadja a kétcímű M-3 gép leírását is, végül rövid ismertetést nyújt a BESzM gépről is. A programozás elméletének és módszertanának alapfogalmait azzal a cél lal ismertettük, hogy ezeket — jóllehet majd minden példát a Sztrela gépre alkalmaztunk — a különböző digitális gépek programozásánál is fel lehessen használni. A gépek szerkezetének ismertetését csakis a gépek működési elveinek megvilágításához szükséges kisebb terjedelemben tárgyaljuk. Az erre vonat kozó ismeretek nélkül a programozás kérdéseinek tudatos vizsgálata és különö sen az ezen a területen folytatott kutatómunka lehetetlen. A könyv a korszerű technikai színvonalat és a fejlődés távlatait is ismer teti, hogy az elektronikus digitális gépek lehetőségeiről és alkalmazási terüle tükről helyes fogalmat alkothassunk. A könyv tehát ennek megfelelő fejezete ket is tartalmaz. A könyvben részben felhasználtuk a „Szovjetszkoje Ragyio” kiadónál 1956-ban megjelent А. I. K itov „Elektronnije cifrovije masini” (Elektronikus digitális gépek) c. könyvét, valamint a korszerű szovjet és külföldi irodalom anyagát. A bevezetést, valamint a I I —IV. és XI. fejezetet A. I. K itov , az I., és Y.—X. fejezetet pedig N. A. K r in y ic k ij írta. A szerzők megragadják az alkalmat, és hálás köszönetüket fejezik ki Sz. L. Szoboljev akadémikusnak és a Moszkvai Állami Lomonoszov Egyetem
M atem atik ai és S zám ítástechnikai T anszéke egész k o llek tív á ján ak a k ö n y v v á z la tá n a k m eg tárg y alásáé rt és az a d o tt értékes ja v a sla to k é rt, V. D. R o se n KNOimak, ak i az M-3 gépről közölt szám os a d a to t, és a megfelelő szöveget á tn éz te, J. I. jANOvnak, aki a program ozás logikai sém áinak áta la k ítá sá ró l szóló fejezetben sok értékes ta n á c so t n y ú jto tt; végül a szerzők h álás köszönetü k e t fejezik ki V. B. ORLOVnak, M. M. GoRJACSAJÁnak, a k ö n y v szerkesztői nek, ak ik nem csak a k ö n y v szerkezetére, h anem ta rta lm á ra v o n atk o zó an is sok érté k es tan ác csal szolgáltak.
A szerzők
A fo rd ítás alap jáu l az 1969-ben m egjelent ered eti m ú szolgált. Az 1961. évi m ásodik kiad ás az elsőnek v álto za tla n u tánnyo m ása. (Szerkesztő)
6
TARTALOMJEGYZÉK Előszó ....................................................................................................................................................
5
Bevezetés .............................................................................................................................................. 1 . A szám ítástechnika fejlődésének alap v ető lépései .................................................. 1.1. Folytonos m űködésű (analóg) szám olóberendezések ...................................... 1.2. D igitális szám o ló g ép ek .................................................................................................. 2. Az elektronikus digitális gép általános szerkezeti v áz la ta és a program vezérlés elve ................................................................................................................................................. 2.1. Szerkezeti v á z l a t ............................................................................................................. 2.2. A program vezérlés e l v e ................................................................................................ 3. Az elektronikus digitális gépek a lk a lm a z á s a ................................................................. 3.1. A digitális gépek alkalm azása tudom ányos és m űszaki k u ta tá so k ra , fel dolgozásokra ...................................................................................................................... 3.2. A digitális gépek alkalm azása inform ációk feldolgozására ............................. 3.3. A gép alkalm azása a g y ártási foly am ato k önm űködő vezérlésére ...........
13 15 15 17
I.
23 23 25 26 26 28 30
FEJEZET
Az elektronikus digitális gépek aritmetikai alapjai 4. H elyértékes sz ám ren d szerek .................................................................................................. 4.1. A róm ai sz á m re n d s z e r.................................................................................................. 4.2. A helyértékes szám rendszer fogalm a ..................................................................... 4.3. Az oktális helyértékes szám rendszer ..................................................................... 4.4. B ináris helyértékes szám rendszer ............................................................................ 4.5. E gyéb helyértékes szám rendszerek ........................................................................ 5. Szám ok á tírá sa egyik helyértékes szám rendszerből a m ásik b a ................................ 5.1. Az egész szám ok á t í r á s a .............................................................................................. 5.2. T örtek á tírá sa .................................................................................................................. 5.3. Á tírás oktális szám rendszerből bin árisb a és binárisból oktális szám ren d szerbe ................................................................................................................................. 5.4. A szám ok b in á risan kódolt decim ális a la k ja ...................................................... 6. A szám ok bevitele a gépbe, és beírásuk a m em óriába ............................................. 6.1. A szám ok beírása ly u k k á rty á ra .............................................................................. 6.2. A szám ok bevitele a fixpontos gép m em ó riarek e sze ib e.................................. 6.3. A szám ok beírása a lebegőpontos gép m em óriarekeszeibe ........................... 6.4. A gép m em óriarekeszeiben elő állíto tt szám ok ta r t o m á n y a ........................... 6.5. Egyenes k ód .................................................................................................................... 7. B ináris összegezők és a segítségükkel pozitív szám okon v é g re h a jto tt m űveletek . 7.1. Egyelem es bináris összegező....................................................................................... 7.2. Többelem es bináris ö ssz eg e ző ..................................................................................... 7.3. A legelső elem ről átv itellel el nem lá to tt összegezők p o zitív szám okon v é g re h a jto tt m ű v e le te i.................................................................................................. 7.4. Ciklikus átv itellel e llá to tt összegező pozitív szám okon v é g re h a jto tt m ű v e letei ...................................................................................................................................... 8. A lgebrai összeadás tízes kom plem ens k ó d b a n ............................................................... 8.1. Tízes kom plem ens k ód ................................................................................................ 8.2. M ódosított 10 kom plem ens k ó d ..............................................................................
34 34 34 37 39 40 41 41 42 44 45 46 46 48 51 54 56 57 57 58 59 59 60 60 67
7
9.
A lgebrai összeadás 9 kom plem ens k ó d b a n .................................................................. 9.1. 9 kom plem ens k ó d ........................................................................................................ 9.2. M ódosított 9 kom plem ens k ód ................................................................................ 10. N orm alizált szám ok összeadása és kivonása. Szorzás és osztás fixpontos és lebegő pontos gépekkel ........................................................................................................................ 10.1. Szám ok összeadása és kivonása lebegőpontos g é p e k k e l................................. 10.2. Szám ok szorzása és osztása a g é p e k k e l.................................................................
70 70 79 82 82 86
II. FEJEZET
A matematikai logika és az elektronikus digitális gépek áramköreinek szerkesztése 11. Bevezetés a logikai a lg e b r á b a ............................................................................................. 11.1. Az íté le t fogalm a és an n a k logikai é r t é k e .......................................................... 11.2. Ö sszetett ítéletek . Logikai kapcsolatok. Logikai m ű v e le te k ......................... 11.3. Az algebrai logikai m űveletek geom etriai é rte lm e z é s e .................................... 11.4. A logikai m űveletek k ö zö tti kapcsolatok ............................................................ 12. Logikai kifejezések á t a l a k í t á s a ........................................................................................... 12.1. A logikai kapcsolatok no rm ál alak ja i ................................................................... 12.2. A zonosan igaz és ham is kifejezések ..................................................................... 12.3. Az ö sszetett logikai kifejezések s o k ré tű s é g e ........................................................ 12.4. Logikai kifejezések áta la k ítá sa ................................................................................ 13. Az elektronikus áram körök kapcsoló (nem lineáris) elemei .................................... 13.1. E lektroncsövek ............................................................................................................... 13.2. Félvezető diódák és tr i ó d á k ....................................................................................... 13.3. Mágneses v a s m a g o k ...................................................................................................... 14. E lektronikus kapcsolások a logikai a la p m ű v e le te k re ................................................. 14.1. E lektroncsövekből és félvezető diódákból k ia la k íto tt logikai áram k ö rö k 14.2. Félvezető trió d ás logikai kapcsolások ................................................................... 14.3. Mágneses vasm agos logikai kapcsolások .............................................................. 15. K om b in ált elektronikus logikai kapcsolások ................................................................ 15.1. K ettő s s z e le p .................................................................................................................... 15.2. Egyetem es á t a l a k í t ó ...................................................................................................... 15.3. Irán yítókapcsolás ........................................................................................................... 15.4. C súsztató ára m k ö r ........................................................................................................ 16. Irá n y ító logikai kapcsolások szintézise ............................................................................ 16.1. E lső példa ........................................................................................................................ 16.2. M ásodik példa ............................................................................................................... 16.3. H arm ad ik példa ............................................................................................................. 17. Az egyelemes bináris összegezők szintézise ................................................................... 17.1. K étb em en etű egyelemes bináris összegező .......................................................... 17.2. H árom bem enetű egyelemes bináris összeg ező .....................................................
87 87 89 93 95 96 96 97 98 99 102 103 104 109 111 111 114 116 117 118 118 119 120 121 122 124 125 126 126 128
III. FEJEZET
Az elektronikus digitális gépek egységeinek műszaki elvei 18. A gépek berendezésének! elvei és típ u sai ..................................................................... 18.1. P árhuzam os és soros m űködésű gépek. F ixpontos és lebegőpontos gépek 18.2. A gépi u ta sítá so k cím einek szám a ....................................................................... 19. A gép vezérlőegysége ............................................................................................................. 19.1. A gép vezérlőegységének rendeltetése és ta r t o z é k a i ........................................ 19.2. A vezérlőegység m űködési sorrendje ..................................................................... 19.3. A feltételes u grás v é g r e h a jtá s a ................................................................................ 20. Az a ritm etik ai e g y s é g e k .......................................................................................... 20.1. P árhuzam os m űködésű összegezők .......................................................................... 20.2. Soros m űködésű összegezők ....................................................................................... 20.3. L ebegőpontos szám ok összeadására és k iv o n ására szolgáló egység .............. 20.4. S zorzóegységek................................................................................................................. 21. M emóriaegységek ...................................................................................................................... 21.1. L yukszalagok és ly u k k á rty á k .................................................................................. 21.2. E lektrom echanikus és elektronikus relék ............................................................
8
132 132 133 134 134 135 139 139 140 143 145 147 149 149 150
21.3. K ésleltető vonalak ........................................................................................................ 21.4. Mágneses dobok és szalagok .............................................................. w.................... 21.6. K atódsugaras m em óriarendszerek ............................................................................ 21.6. F erritgyűrűs m em ó riaeg y ség ....................................................................................... 21.7. F erroelektrom os m em óriaegységek .................................................................... 22. A szovjet elektronikus digitális szám ítógépek főbb t í p u s a i ................................ 22.1. A B E S z M gép ............................................................................................................... 22.2. A Sztrela g é p ................................................................................................................... 22.3. Az Urál gép ................................................................................................................... 22.4. Az M -3 g é p ......................................................................................................................
IV.
160 163 165 159 161 162 162 164 170 172
FEJEZET
A z e le k tro n ik u s d igitális gép ek fejlesztési irá n y a i
23. A fejlesztés általános irányelvei ....................................................................................... 23.1. M atem atikai szám ításokra szolgáló g é p e k ............................................................ 23.1. Az inform áció feldolgozására szolgáló gépek ..................................................... 23.3. Az au to m atik u s vezérlés céljait szolgáló g é p e k .............................................. 24. Ű j építési elvek kidolgozása és az elektronikus digitális gépek korszerűsítése . . . 24.1. A gépek m űködési sebességének n ö v e lé s e ........................................................... 24.2. Indexregiszterek alkalm azása .................................................................................. 24.3. A m ikroprogram -vezérlés elvének alkalm azása és a gép stru k tú rá já n a k h a j lékonyabbá té tele ........................................................................................................... 24.4. A gépek szerkezeti k ia lak ításá n ak és g y ártástech n o ló g iáján ak korszerű sítése ................................................................................................................................... 24.5. Az ad a to k bevitelére és kivitelére szolgáló gyors m űködésű egységek k id o l gozása ................................................................................................................................. 26. Ú j elem ek kidolgozása ....................................................................................................... 25.1. Ferrom ágneses elem ek ................................................................................................ 25.2. Félvezető készülékek .................................................................................................... 25.3. Ú j kapcsoló- és m em óriaelem ek kidolgozása ......................
V.
174 174 177 181 182 182 184 185 187 189 190 191 193 194
FEJEZET
A S ztr e la , M -3 és XJrál gépek p ro g ra m o z á s á n a k k iin d u ló a d atai
26. Az u ta sítá so k v égrehajtási s o r r e n d je ................................................................................ 26.1. Term észetes m űködési sorrendű g é p e k ................................................................... 26.2. K ényszer m űködési sorrendű gépek ..................................................................... 26.3. A rekesz ta rta lm á n a k „olvasása” ............................................................................ 27. A Sztrela gép általános jellemzői ..................................................................................... 27.1. A szám ok beírása a m em ória rekeszeibe ............................................................ 27.2. Az u ta sítá so k szerkezete és azok beírása ............................................................ 27.3. A program bevitele a gép m em óriájába ............................................................ 27.4. A gép üzem ének au to m atik u s vezérlése .............................................................. 28. A Sztrela gép m űveleteinek és u ta sítá sa in a k rendszere .......................................... 28.1. Az u tasításo k és m űveletek tá b lá z a ta ................................................................. 28.2. N éh án y u ta sítá s m ag y aráz ata .................................................................................. 28.3. A konstanskiadó egységben tá ro lt á l la n d ó k ........................................................ 29. Az M -3 gép program ozásához szükséges ism eretek ................................................. 29.1. A szám ok beírása a m em óriaeg y ség b e................................................................... 29.2. Az u ta sítá s szerkezete és beírása ............................................................................ 29.3. A program bevitele a gép m em óriájába és az eredm ények k iírása ................ 29.4. A gép m űveleti és u tasításrendszere ..................................................................... 30. Az Urál gép program ozásához szükséges is m e r e te k ................................................... 30.1. A szám ok beírása a m em óriarekeszekbe ............................................................ 30.2. Az u ta sítá so k s z e r k e z e te ............................................................................................. 30.3. A gép legfontosabb sajátosságai .............................................................................. 30.4. Az Urál gép m űveleti és u tasításrendszere ........................................................
196 196 198 199 200 200 202 206 206 207 208 208 228 229 229 230 231 232 234 234 236 238 239
9
V I. F E JE Z E T
A p ro g ram o z ás a la p ja i
31. K özvetlen p ro g ra m o z á s........................................................................................................... 31.1. Á ltalános tá jé k o z ta tá s ............................................................................................... 31.2. P rogram összeállítási példa ......................................................................................... 31.3. E lágazó program ok ...................................................................................................... 32. O perátoros program ozás ...................................................................................................... 32.1. A program logikai v áz la tai ....................................................................................... 32.2. Az operátorok tu lajdonságai ..................................................................................... 32.3. A program logikai v áz la tain ak ábrázolási szabályai ...................................... 32.4. P éldák az operátoros program ozásra ..................................................................... 33. Ciklikus p r o g r a m o k .................................................................................................................. 33.1. Iterációs ciklus ............................................................................................................... 33.2. Ciklusok cím ek á t ír á s á v a l........................................................................................... 33.3. Címek á tírá sá t és visszaállítását ta rtalm a zó ciklus ........................................ 34. A ciklus ism étlésének vezérlési m ódszerei ..................................................................... 34.1. A ciklus ism étlését vezérlő operátor ..................................................................... 34.2. Ciklusism ótlés-szám láló ............................................................................................... 34.3. M indaddig ism étlődő ciklus, am eddig valam ilyen m onoton változó m enynyiség valam ilyen m eg ad o tt érté k et tú l n em l é p ............................................. 34.4. L ogikai s k á l á k ................................................................................................................. 35. Az operátoros program ozás n éh án y általános eljárása ............................................. 35.1. R utinrekeszek ................................................................................................................. 35.2. A lprogram (szubrutin) operátorok ......................................................................... 35.3. M ennyiségek keringetése a rutinrekeszekben ..................................................... 35.4. F orm áló operátorok ...................................................................................................... 36. F ixpontos gépek p ro g ra m o z á sa ........................................................................................... 36.1. Egycím es gépek program ozása ................................................................................ 36.2. K étcím es u ta sítá sú gépek p ro g ra m o z á s a ..............................................................
244 244 245 250 256 256 258 260 263 269 270 271 276 281 281 285 289 290 292 292 296 300 302 305 305 312
VII. FEJEZET A k ézi p ro g ram o z ás m ódszerei
37. A m u n k a sorrendje kézi program ozás esetén .............................................................. 37.1. P aram e trik u sán a d o tt szám ítási v ázlat .............................................................. 37.2. Logikai v ázlatok összeállítása .................................................................................. 37.3. A m em ória kiosztása és a program összeállítása ............................................. 38. A k ö n y v tá ri szubru tin o k m ódszere .................................................................................. 38.1. K ö n y v tá ri szubrutinok ................................................................................................ 38.2. P élda n y ílt k ö n y v tá ri sz u b ru tin ra .......................................................................... 38.3. A k ö n y v tá ri szubrutinok m ódszerének au to m atizálása .................................. 38.4. E gyesítő p rogram ........................................................................................................ 39. Az egyes m u n k á k au to m atizálása kézi program ozás esetén ................................. 39.1. Ä k o n k rét cím ek lefoglalásának au to m atizálása ............................................... 39.2. A p ro g ram b an észrevett bizonyos h ib á k kiküszöbölésének au to m atizálása 39.3. B E C sÁ program .............................................................................................................
315 315 317 321 322 322 324 327 330 331 331 333 334
V ili. FEJEZET A fe la d a to k m e g o ld á sán a k sa já to ssá g a i e le k tro n ik u s d ig itális gép ek en
40. Ellenőrzési m ódszerek ........................................................................................................... 40.1. A program felülvizsgálata és a program beírás helyességének ellenőrzése. . 40.2. A program re v íz ió ja ...................................................................................................... 40.3. A gépm űkődés helyességének ellenőrzése ............................................................ 40.4. A szám ítások helyességének ellen ő rzé se................................................................ 41. A p rogram szerkezete ................................................ 41.1. A lapfogalm ak és je lö lé se k ........................................................................................... 41.2. P éldák program ok szerkezeti v á z l a t á r a ................................................................. 42. A num erikus m ódszer kiv álasztása ................................................................................... 42.1. A szám ítási h i b a ..........................................................................................................
10
338 338 342 343 346 348 348 349 350 351
42.2. Az algoritm us ö n á tö le lé s e ........................................................................................... 352 42.3. A költség szám ítása és az időráfordítás .............................................................. 353 43. A sta tisz tik u s vizsgálatok m ódszere (M onte-C arlo-m ódszer).................................... 356 43.1. V életlen szám generátorok ........................................................................................... 355 43.2. Csebisev-féle e g y e n lő tle n sé g ......................................................................................... 356 43.3. In te g rá l kiszám ítása különlegesen k ia la k íto tt g en eráto r segítségével . . . . 357 43.4. E gyszerű és többszörös integrálok kiszám ítása ru tin g en eráto ro k segítségé vel ........................................................................................................................................ 358 43.5. F üggvényértékek kiszám ítása inverz függvényük a la p já n és egyenletek m e g o ld á s a .......................................................................................................................... 360 43.6. A véletlen szám ok flu x u sán ak á ta la k ítá sa .......................................................... 362 43.7. E lm életi valószínűségi m odell .................................................................................. 363 43.8. A felad at m egoldásánál fellépő h ib á k ................................................................... 364 43.9. A m ódszer előnyei ........................................................................................................ 366 44. A függvényértékek m egadásának és k iszám ításán ak m ódszerei ........................... 367 44.1. A függvény m egadási m ódszerének k iv á la s z tá s a ............................................... 367 44.2. A függvény an alitik u s m egadása ............................................................................ 368 44.3. A függvény m egadása differenciálegyenlet segítségével ............................... 369 44.4. A közelítő polinom ok m ódszere .............................................................................. 370 44.5. A függvény táb láz ato s m egadása ............................................................................ 370 45. A függvényértékek k iválasztási m ódszere kis tá b lázato k b ó l ................................. 371 45.1. R eguláris tá b láz ato k .................................................................................................... 371 45.2. N em reguláris tá b láz ato k . Az átv álo g atás m ódszere ........................................ 373 45.3. K özel-reguláris tá b lá z a to k ......................................................................................... 373 45.4. A kétlépéses átv álo g atás m ó d s z e re .......................................................................... 376 45.5. A kettéo sztás m ó d s z e re ................................................................................................ 379 45.6. A tá b lá z a t csúszó kezdetének (végződésének) m ódszere .................................. 380 45.7. A tá b lá z a t „egyenletes” elhelyezésének m ódszerei a m e m ó r iá b a n .............. 380 45.8. S zubrutin példák a függvényértékek tá b lá z a tb ó l tö rté n ő k iv álasztására . 384 IX.
FEJEZET
A program logikai vázlatának formális átalakításai 46. A lapfogalm ak ............................................................................................................................. 391 46.1. M egnevezések és egyszerűbb összefüggések.......................................................... 391 46.2. A fő logikai változók .................................................................................................. 394 46.3. A vázlatbeli transzform ációk elosztása ................................................................ 397 46.4. A v áz la t v égrehajtása a fő logikai változók érték so ro zatán ak a d o tt rendezése alap já n ............................................................................................................................... 398 46.5. A v ázlat é r t é k e ............................................................................................................... 400 46.6. A v ázlatok e g y e n é rté k ű sé g e ....................................................................................... 402 47. Logikai kapcsolatok áta la k ítá sa a v áz lato k b an .......................................................... 402 47.1. Az o p erátor logikai függvény a lá rendelése ................................................. 402 47.2. A logikai függvények k ic serélh ető sé g e................................................................... 406 47.3. A logikai kapcsolatok jeleinek k ik ü sz ö b ö lé se ...................................................... 407 48. A logikai v ázlatok á ta la k ítá sa ........................................................................................... 409 48.1. A ny ilak áta la k ítá sa .................................................................................................... 409 48.2. Az operátorok áthelyezése ......................................................................................... 410 48.3. Az operátorok kiküszöbölése ..................................................................................... 411 48.4. A zonosan állandó logikai függvények é rté k é t ellenőrző logikai operátorok 411 48.5. P éldák vázlato k á ta la k ítá sá ra .................................................................................. 413 X.
FEJEZET
P ro g ra m o z ó p ro g ra m o k
49.
A utom atikus operátoros program ozás és a P P - S z .................................................. 49.1. Az au to m atik u s operátoros program ozás lényege ............................................. 49.2. Az inform áció kódolósi m ódszerei a P P -S z szám ára .................................... 49.3. A P P -S z á lta l összeállítandó u ta sítá so k a l a k j a ................................................. 49.4. N em szabványos p ro g ra m o z á s .................................................................................. 49.5. A P P -S z program ozó program s z e r k e z e te ............................................................
419 419 421 425 426 430
11
60. Az inform ációnak kódolásra való előkészítése a P P -S z szám ára ........................ 432 50.1. A felad at összeállítása a kódolók s z á m á r a .......................................................... 432 60.2. P éldák inform ációk kódolásra való elő k é sz íté sé re .............................................439 51. Az inform áció kódolása a P P -S z s z á m á r a ..................................................................... 444 61.1. Az inform áció első tö m b je ...................................................................................... 445 61.2. Az inform áció m ásodik tö m b je .............................................................................. 448 61.3. Az inform áció h arm ad ik t ö m b j e .............................................................................. 460 51.4. Az a d a to k előkészítése az inform ációnak a gép m em óriájába tö rté n ő b ev ite lére ....................................................................................................................................... 461 61.5. Példa az inform ációnak a P P -S z szám ára való kódolására ...................... 462 62. A P P -S z program ozó program üzem eltetése .............................................................. 463 62.1. A P P -S z beírása a m ágneses s z a la g ra ................................................................... 453 62.2. Az inform áció bevitele ............................................................................................... 464 52.3. A P P -S z in d ítá sa ........................................................................................................ 454 52.4. A P P -S z á lta l k ia d o tt eredm ények ....................................................................... 454 52.5. A P P -S z m űködése a m em ória nem szabványos kiosztása esetén ......... 456 53. A P P -S z blokkok m űködésének rövid l e ír á s a ........................ .................................. 456 53.1. А К b l o k k ....................................................................................................................... 456 53.2. Az A ' blokk ................................................................................................................... 457 53.3. Az L ’ b l o k k ..................................................................................................................... 458 53.4. Az A b l o k k ..................................................................................................................... 461 53.5. Az L blokk ...................................................................................................................... 463 53.6. A C blokk ........................................................................................................................ 467 53.7. Az F blokk ..................................................................................................................... 468 53.8. A G blokk ........................................................................................................................ 471 53.9. Az О blokk ..................................................................................................................... 472 53.10. A P blokk ..................................................................................................................... 473 XI.
FEJEZET
A z e le k tro n ik u s digitális gépek a lk a lm a z á s á n a k lehetőségei az a ritm e tik á n k ív ü l
54. G épi f o r d í t á s .............................................................................................................................. 54.1. F o rd ítási kísérlet orosz nyelvről angolra az I tíM -701 g é p e n ...................... 54.2. F ordítási kísérlet angol nyelvről oroszra a B E S z M g é p e n ........................... 54.3. F ord ítási kísérlet francia nyelvről oroszra a Sztrela gép se g ítsé g é v e l......... 55. G épi já té k ................................................................................................................................... 55.1. A „szó tár” típ u sú gépek ........................................................................................... 55.2. Szigorúan m eg h atáro zo tt játékszabályo k at realizáló g é p e k ........................... 55.3. Az állások becslésének általános elveit felhasználó gépek ........................... 55.4. „T a p asz ta lat” -gyűjtő gépek ...................................................................................... 55.5. Sakkozó g é p e k ............................................................................................................ 55.6. A feltételes reflex u tá n z á sa ........................ Irodalom ......................................................................................................................................
476 477 480 483 487 487 488 488 488 489 492 494
FÜGGELÉK
Szelezsán János: A z TJvál-2 e le k tro n ik u s szám ítógép rövid is m e r s e té s e ....................... 497 N év- és tá rg y m u ta tó .............................................................................................................. 525
12
BEVEZETÉS A gyors működésű elektronikus számítógépek kialakítása a XX. század közepén a tudományos és műszaki haladás egyik kiemelkedő eredménye. Ezek a gépek rövid idő alatt az első nagyméretű, kevésbé megbízható típusoktól a korszerű, nagy termelékenységű gépekig ugrásszerű, viharos fejlődésen men tek keresztül, igen jelentősekké váltak, és alkalmazási területük erősen bővült. Az elektronikus számítástechnika területén a munka mértékét és ütemét csakis az atomenergia és a reaktív technika területén végzett munka mérő számaival és ütemével hasonlíthatjuk össze. A korszerű elektronikus számítógépek másodpercenként sokezer számí tási műveletet végeznek el, és hatalmas mennyiségű, többmilliós számú adattal dolgoznak. Lehetőséget adnak órákban és percekben mérhető rövid idő alatt olyan bonyolult feladatok megoldására, amelyeknél kézi számítás esetén évek munkájára volna szükség. A számítási munkán kívül az elektronikus számítógépeket közvetlenül felhasználjuk a technikában is, mint a bonyolult automatikus rendszerek vezér lőszerveit. Ezek a rendszerek épp úgy lehetnek egyes gépegységek és szerszám gépek, mint teljes komplexumok, szállító rendszerek, automatizált gyárak, erő művek, és katonai rendeltetésű berendezések. A z e le k tr o n ik u s s z á m ító g é p e k m i n d e n ü t t f e lh a s z n á lh a tó k , a h o l e g y r é tű , d e n a g y m e n n y is é g ű s z e lle m i m u n k á t k e ll v é g r e h a jta n i m e g h a t á r o z o t t s z a b á ly o k v a g y m á s s z ó v a l m e g h a tá r o z o tt a lg o r itm u s a l a p já n .
Algoritmusnak nevezzük a formális szabályok ama rendszerét, amely szabatosan és egyértelműen határozza meg az adott feladat megoldásának menetét. Az ember szellemi tevékenységének valamennyi területén számos olyan különböző jellegű folyamat található, amelyeket szigorúan meghatározott szabályok szerint kell végrehajtani. így például a bankügyletekben és a statisz tikában a beérkezett anyag feldolgozása és elemzése szigorúan meghatározott szabályok szerint történik, tehát algoritmus formájában megfogalmazható. Hasonló a helyzet a munkabér kiszámításánál és a gyártmány költségmeghatá rozásánál, a termelés és az ellátás stb. megtervezésénél. S o k e s e tb e n ez a z a lg o r itm u s p u s z t á n a z é r t n in c s k i a l a k í t v a v a g y r ö g z ítv e , m e r t m é g e n n e k g y a k o r la ti s z ü k sé g e ssé g e n e m m e r ü l t fe l. S z ü k s é g e s e té n a z o n b a n a m e g fe le lő a l g o r i tm u s t k is e b b v a g y n a g y o b b m u n k a r á f o r d ítá s s a l k i le h e t a la k ít a n i.
Mihelyt valamilyen szellemi munkát algoritmus formájában állítottunk elő, lehetőség nyílik arra, hogy a munkát elektronikus digitális gépek segítsé gével automatizáljuk. 13
Míg régebben a műszaki fejlődés arra összpontosult, hogy az ember fizikai munkáját gépi munkával helyettesítse (termelő, szállító, hírközlő, megfigyelő, mérő stb. eszközök fejlődése), addig a XX. század közepét a szellemi munka gépesítését szolgáló eszközök viharos fejlődése jellemzi. Kétségtelen, hogy az ez irányú előrehaladás az emberi tevékenység minden területén gyors és álta lános fejlődéshez vezet. Az első ipari forradalom, amely több mint kétszáz évvel ezelőtt a szövő gépek feltalálásával kezdődött, oda vezetett, hogy az ipar majd minden terü letén az emberi kezet géppel helyettesítették. Ez a munkatermelékenység terén hihetetlen arányú emelkedéssel járt. Mi jelenleg a második ipari forradalom részesei vagyunk. Ennek az a lényege, hogy az ember különböző szellemi munkáit gépek felhasználásával végezzük el. Ez idő szerint még nehezen tudjuk elképzelni azt, hogy ez a forra dalom milyen hatással lesz az emberi társadalom további fejlődésére. Megjegyezzük, hogy az elektronikus digitáUs számítógépek megjelenése a biológiai tudományok egészének fejlődése és elsősorban a magasrendű ideg tevékenység folyamatainak vizsgálata szempontjából is nagy jelentőségű. E gépek segítségével mód nyílik majd arra, hogy az idegrendszer egyes elemi munkafolyamataira és a gondolkodás folyamataira mintákat teremtsünk, és egyre közelebb jussunk e terület törvényszerűségeinek feltárásához. Az elektronikus számítástechnika egyik fontos sajátossága, hogy a kor szerű tudomány és technika különböző területeinek nagy együttesét foglalja össze. Ilyen például a numerikus analízis, a matematikai logika, az elektronika, az impulzustechnika, a félvezetők fizikája; felhasználja e területek eredményeit, ugyanakkor további fejlődésre készteti az említett tudományokat. A Szovjetunióban az elektronikus számítógépek jelentőségét a kommu nizmus építése szempontjából aligha lehet túlbecsülni. Az elektronikus számítógépek alkalmazása a Szovjetunióban biztosítja majd a szovjet tudomány és technika új, sokkal magasabb szintre való hirtelen felemelkedését. Ha a gyártási folyamatokban az elektronikus gépeket önműkö dő vezérlésre használjuk fel, ez a munka termelékenységét jelentős mértékben növeli, javítja a gyártmányok minőségét, és az anyag-, valamint az energia felhasználás gazdaságosságának megjavításához vezet. A kapitalista társada lommal ellentétben, ahol az önműködő elektronikus berendezések bevezetése a munkások elbocsátásával és életkörülményeik rosszabbodásával jár, a szocia lista társadalomban az elektronikus automatika és egyben az elektronikus számítógépek megkönnyítik az emberi munkafeltételeket, mentesítik a dolgo zókat az erősen munkaigényes, fárasztó, egyhangú szellemi munkától, és végső soron lehetővé teszik a munkások anyagi jólétének növelését. A Szovjetunióban az elektronikus gépeket olyan ipari folyamatok önmű ködő vezérlésénél használják fel, amelyek az emberi egészségre és életre veszé lyesek. Ilyenek például a vegyipar bizonyos területei. Az elektronikus digitális gépek jövőbeni alkalmazásának egyik fontos területe az adminisztratív gazdasági irányítás, az állami tervezés, a könyvelés és az ellenőrzés folyamatainak gépesítése és automatizálása lesz. A Szovjetunió Kommunista Pártjának XXI. kongresszusán a Köz ponti Bizottság beszámolója kiemelte az elektronikus számítástechnika jelentő ségét és széleskörű fejlesztésének szükségességét. Rám utatott arra, hogy „az elektronikus technika felhasználásával a gyártás komplex gépesítésére és auto matikus vezérlésére való áttérés a korszerű műszaki fejlesztés legjellegzetesebb 14
vonása . . . A gyártási folyamatok automatizálásának területén a számítás technika eredményei széles távlatokat nyitottak. A korszerű számítógépek alkalmazása a gyártási folyamatok vezérlésére módot nyújt a lehető legkedve zőbb üzemelésnek megfelelő technológiai folyamat automatikus kiválasztására és megvalósítására . . . A matematika és a számítástechnika eredményei az automatika fejlődésével közvetlen kapcsolatban állanak.” A párt és a kormány nagy figyelmet fordít az elektronikus számítástechnika fejlődésére és arra, hogy azt a tudomány, a technika és a gazdaság különböző területein alkalmazzák. 1. A szám ítástechnika fejlődésének alapvető lépései
A tudósok és a mérnökök törekvése már régóta arra irányult, hogy meg találják a nagy számítási munkát igénylő feladatok megoldásának megkönnyí tésével kapcsolatos módszereket, és kialakítsák e fárasztó munka gépesítésé nek eszközeit. A számítástechnika két irányban fejlődött: 1. a folytonos működésű számítógépek és egységek és 2. a diszkrét vagy digitális működésű gépek és egységek létesítésének irányában. 1.1. Folytonos működésű (analóg) számolóberendezések. A folytonos működésű számítógépek a matematikai mennyiségeket valamilyen fizikai mennyiség (hossz, szög, feszültség stb.) folytonos értékeivel ábrázolják. A folytonos működésű számolóberendezésekre a szokásos logarléc és különböző mechanikus eszközök (planiméterek, integrátorok, integrométerek stb.) szolgáltatnak példát. A folytonos működésű számolóberendezésekben a számítás pontosságát az egyes elemek elkészítésének minősége és elfogadott tűrésük korlátozza. Ez arra vezet, hogy az eredmény legjobb esetben három-négy értékes jegyig helyes. A megoldás pontosságának lényeges növelése elháríthatatlan technológiai és üzemeltetési nehézségekbe ütközik. Ez a folytonos működésű gép alapvető hiányossága, a diszkrét működésű gép ilyen hiányosságot nem mutat. A folytonos működésű számológépek szerkezetüket tekintve számos egyedi egységből állanak, amelyek mindegyike valamilyen matematikai műve letet (összeadás, kivonás, szorzás, osztás, integrálás, adott függvény előállítása stb.) hajt végre. Ezeket az egységeket a megoldandó egyenlet konkrét alapjá nak megfelelő módon kell egymással összekötni. Amennyiben a számológép csak egyfajta egyenlet megoldására készült, akkor a gép matematikai egysé geinek összetétele és egymás közötti kapcsolása állandó. Az ilyen gépek nagy mértékben specializáltak. Nagymértékben specializált, folytonos működésű számológépre az ismert légvédelmi tüzérségi vezérlő berendezést (PUAZO) hozhatjuk fel példának. A folytonos működésű számológépek kialakítása alkalmával általában arra törekszenek, hogy azok megfelelően illeszthetők legyenek, és viszonylag széles feladatkör megoldására nyíljék lehetőség. Ebből a célból a gépeket oly módon alakítják ki, hogy mind a feladat megoldásában részt vevő matematikai berendezések tartalmát, mind eme berendezések összekapcsolási módját változ tatni lehessen. A folytonos működésű számológépen valamilyen feladat megoldása oly módon történik, hogy alkalmas időpillanatban a gépben a feladat megoldásá15
ban részt vevő valamennyi elemére a független változó pillanatértékének meg felelően egyidejűleg alkalmazzuk az egyenlettel meghatározott valamennyi szükséges matematikai ábrázolást. Ebből következik, hogy a folytonos műkö désű gépben megoldható matematikai feladatok típusát és bonyolultságát a gépi berendezés meglevő készlete korlátok közé szorítja. Ily módon valamennyi folytonos működésű számológép kisebb vagy nagyobb mértékben szakosított gép. A folytonos működésű gépek legfontosabb osztályát a közönséges diffe renciálegyenlet-rendszerek megoldására készült elektronikus gépek jelentik. Ezeket a gépeket elektronikus integrátoroknak vagy elektronikus modellberendezéselcnek nevezzük. Az utóbbi elnevezést az magyarázza, hogy eme berende zések segítségével állítjuk elő a különböző dinamikus rendszerek mozgásának leíró (modellezett) matematikai kapcsolatát. A z e le k tr o n ik u s i n t e g r á to r o k a m a te m a ti k a i m ű v e le t e t e g y e n le t-m e g o ld ó v illa m o s á r a m k ö r ö k s e g íts é g é v e l v a l ó s ítj á k m e g , és a f e la d a t m e g o ld á s á b a n r é s z t v e v ő m e n n y is é g e k e t fe s z ü lts é g f o r m á já b a n á b r á z o ljá k .
Az elektronikus integrátorok korszerű, gyors működésű matematikai gépek. A mozgó tárgyak különböző önműködő vezérlő és szabályozó rendszerei nek vizsgálatánál az utóbbi időben igen fontossá vált a modellezés módszere. Ez abból adódik, hogy a vezérlőberendezés tényleges próbapéldányát integráló géppel kapcsoljuk össze. Az adott esetben az integrálógép a mozgó, szabályo zandó tárgyat helyettesíti. A gép megoldja a szabályozandó tárgy mozgás egyenleteit és a tárgy mozgására: sebességére, gyorsulására, rezgőmozgásának jelleggörbéire stb. jellemző villamos jeleket ad a vezérlőberendezésre. Ily módon a vezérlőberendezés az integrálógéptől ugyanolyan jeleket kap, mint amit a tényleges mozgás során a tárgy helyzetét meghatározó mérőelemektől kapna. A tárgy helyzetéről adott jelek alapján a vezérlőberendezés kidolgozza a vezérlő jeleket, amelyeket azután a mozgásegyenlet ismételt megoldása céljából az integrálógépre adnak mint járulékos bemenő adatokat. Laboratóriumi beren dezéssel tehát bármilyen vezérlőberendezés és a hozzá tartozó mozgó tárgy kísér leti vizsgálatának és feldolgozásának feltételeit megteremthetjük. A módszer jelentősége igen nagy, különösen a reaktív lövedékek, automata pilóták és más tárgyak vezérlőrendszereinek feldolgozásakor. Nyilvánvaló, hogy a vezérlőberendezés üzeménél a valóságos feltételeket csak akkor tudjuk megteremtem, ha az integrálógép által kidolgozott, a tárgy mozgására vonatkozó jelek a vezérlőberendezésre természetes időütemezéssel adagolódnak. Ebből a célból az integrálógép a mozgásegyenlet megoldásakor az időt, mint független változót használja fel. Ennek következtében a gépnek a rövid idő alatt lejátszódó folyamatokra vonatkozóan megfelelő gyorsasággal kell megoldania a mozgásegyenleteket. Az elektronikus integrátorok alapvető sajátossága, hogy az időt — különösen a gyorsan lezajló folyamatok leírására szolgáló differenciálegyenletek megoldásakor — mint független változót tartal mazzák. A mozgásegyenletek modellezése a matematikai gépek tényleges vezér lőberendezéssel való összekapcsolása útján az elektronikus integrátorok olyan alkalmazási területét képviseli, ahol jelenleg még nem lehet azokat más típusú számológépekkel sikerrel helyettesíteni. Az elektronikus integrátorok előnye ezenkívül a viszonylag egyszerű szer kezet, a kis előállítási költség és a szerkezet tömörsége. Az elektronikus integrátorokat a modellezésen kívül sikeresen alkalmaz 16
hatják a különböző tudományos kutató intézmények, tervező irodák és gyárak. A nagy pontosságot nem igénylő gyors, becslő mérnöki számításokra és a különböző differenciálegyenletek kvalitatív vizsgálatára. 1.2. D igitális szám ológépek. Vizsgáljuk mega számítástechnika fejlődé sének másik irányát, a digitális számológépek és készülékek fejlődését. Ilyen típusú készülékek között ismert példa az aritmométer, de ide tartoznak a külön böző kézi, billentyűs számológépek is. Az aritmométerrel és a billentyűs kézi számológépekkel csak számtani műveletek végezhetők el, azonban alaposan kidolgozott matematikai számítási módszerek felhasználásával ezekkel a gépekkel a legkülönbözőbb matematikai feladatok is megoldhatók. A digitális gépekben a számokat a számjegyek egymásutánja, a függvé nyekkel változó mennyiségek, illetve azok értékének egymásutánja állítja elő. Minden számjegy ábrázolására valamilyen készülék (elem) van alkalmazva, amely csak bizonyos, egymástól élesen elhatárolt állapotok egyikében lehet. Az elem minden állapota valamilyen meghatározott számjegy előállításának felel meg. A szám ábrázolásához ilyen elemek együttese szolgál. A feladat meg oldása az eredeti számokkal egyes aritmetrikai műveletek elvégzéséhez vezet. Éppen ezért a digitális gépeket gyakran diszkrét működésű gépeknek is nevezik. A folytonos működésű matematikai készülékkel szemben a digitális számolóberendezések legfontosabb előnye a lényegesen nagyobb számítási pontosság és az egyetemlegesség. Olyan folytonos működésű számológép kialakítása lehetetlen, amely a fel adat megoldásának eredményét a benne alkalmazott szerkezetek jelenleg elér hető elkészítési pontosságánál nagyobb pontossággal adja. Ezzel szemben a digitális számológépek létesítésekor azok üzemében mindig biztosítható a te t szőleges adott pontosság, amit a gép szerkezetében a számok helyértékeit ábrá zoló elemek megfelelő számának beiktatásával érünk el. Ugyanakkor az elemek elkészítésének pontosságával és üzemi stabilitásával szemben felállított köve telmények nem növekednek. Elég az, ha ezek az elemek — elektroncsövek, relék, fogaskerekek stb. — meghatározott számú, egymástól élesen különböző, rögzített állapotot vesznek fel, mint például az áram vezetése vagy nem veze tése, az érintkezők zárása vagy nyitása, a fogaskerék adott foggal való kapcso lódása stb. Ily módon maga a számítási műveletet nagy pontossággal elvégző digitá lis berendezés olyan elemekből épül fel, amelyeknek pontossága és üzemi stabi litása viszonylag nem nagy, és készítésükkel szemben nem lehet nagy igényeket támasztani. Csupán annyi a lényeges, hogy az elemek karakterisztikáinak és üzemük bizonytalanságának mértéke ne lépje túl azt a határt, ahol az elemek egyes rögzített állapotai közötti különbség eltűnik. Ebben áll a diszkrét műkö désű gépek működési elvének első fontos előnye a folytonos működésű gépek működési elvével szemben. A folytonos működésű gépekkel szemben a digitális számológépek máso dik fontos előnye az alkalmazásuk univerzalitása. A folytonos működésű gépek től eltérően a digitális számológépek nem a megoldásra váró egyenletet model lezik, hanem a feladatmegoldás számítási algoritmusának megvalósítására szol gálnak. Tudjuk azt, hogy a széleskörűen kidolgozott matematikai számítási módszerek, a négy számtani művelet: az összeadás, kivonás, szorzás és osztás 2 Kitov—Krinyickij
17
ismételt alkalmazására vezetjük vissza a legkülönbözőbb matematikai felada tok megoldását. Bizonyos (trigonometrikus, logaritmikus és más) feladatok meg oldásakor függvénytáblázatokat is fel kell használnunk, azonban elvben bár mely feladat megoldható ilyen korábban összeállított függvénytáblázat felhasználása nélkül is, ha feltételezzük, hogy a függvény nélkülözhetetlen értékeit a szükséghez képest (a megkívánt pontossággal) közelítő képletek alapján fogjuk kiszámítani. A digitális számológépek a négy számtani műveletet hajt ják végre, és ezekkel oldják meg a különböző jellegű feladatokat, vagyis elvben a gépek univerzális rendeltetésűek. A digitális számológépek lényeges hátránya sokáig a kis számítási sebes ség volt. Az aritmométerrel vagy a kézi, billentyűs számológépen egyetlen számtani művelet elvégzésére a műveletet végrehajtó személynek viszonylag nagyszámú mozgást kell elvégeznie a kiinduló számok bevitelével, magának a műveletnek végrehajtásával és az eredmény kiírásával kapcsolatban. Ezután jelentek meg a villamosított asztali számológépek, amelyeknél az aritmetikai műveletek megoldási folyamata automatizált volt. A kézi aritmométerekhez hasonlóan azonban ezek a gépek is csak az egyedi műveletek végre hajtására szolgáltak: minden feladatnál kézzel kellett a műveletben részt vevő számokat a gépbe bevinni, és az utasításgomb lenyomásával kellett megadni, hogy milyen művelet kerül sorra. Analitikus számológépek. Századunk elején kezdték el a statisztika, a könyvelés és a pénzügyi és bankügyletek követelményeinek kielégítésére az analitikus számoló vagy perforációs gépek kialakítását. A perforációs gépeknél a műveletben részt vevő számok adagolásának folyamata gépesített, és a számok bevitelének folyamata el van választva a számtani műveletek végrehajtásától. Ebből a célból minden számjegy a szab ványos vékony kartonlap, az úgynevezett lyukkártya megfelelő helyén lyukrend szerrel van ábrázolva. A lyukkártyákra előzetesen lyukrendszerek formájában visszük fel az üzemben levő gép vezérlésére szolgáló különleges „utasításokat” is arra vonatkozóan, hogy milyen műveletet mely számokkal kell végrehajtani. A lyukkártya-csomagot a gépbe helyezzük. A csomagból a gépbe kerülő lyukkártyákat a gép villamos érintkező rendszere „letapogatja”, a lyukkártya meghatározott helyén lyuk jelenléte esetén zárja érintkezőit, és jelet ad a gép meghatározott egységének. Amennyi ben a kártyán nincsen lyuk, jel kiadása nem történik. Az analitikus számológépeknél a gép behangolása valamilyen feladatra kapcsolás útján történik. A számlaösszegező gépeknél például az úgynevezett tabulátorban a lyukkártyáról kapott jelek valamilyen számláló megfelelő hely értékeire jutnak, amit a megfelelő kapcsolás — a gép egyes berendezéseiben levő bemenő-, illetve kimenő érintkezők egyesítése —biztosít. A gépet valamely meghatározott feladat megoldására a gép üzemének megkezdése előtt kapcsol juk és hangoljuk be, és a feladat teljes megoldási folyamata alatt változatlanul hagyjuk. Az állandó kapcsolás nem biztosítja üzemelés közben a szükséges hajlé konyságot, azaz nincs mód megoldás közben a gép áthangolására. Matematikai feladatok megoldásakor azonban gyakran lép fel olyan igény, hogy a kapott közbenső eredmény erői vagy valamilyen más ismertető jeltől függően a számo lási folyamat folytatására egyik vagy másik irányt válasszuk. Éppen ezért már az analitikus számológépekben olyan különleges áramkört alkalmaztak, ami módot nyújt a lyukkártyákról kapott jelek, a gépben beállított jel átviteli 18
irá n y á n a k a ly u k k á rty á k m eg h atá ro zo tt helyein levő ly u k ak jelenlététől függő m eg v álto ztatá sára.
A tabulator például az egymás után következő számokat összegezi, amennyiben a gépbe belépő lyukkártyák meghatározott jellel vannak ellátva, illetve ha a kiszámított összeget a nyomtató egységbe adja be, és az új szám s o r o z a t e g y m á s u t á n i ö ssz e g e z é sé re t é r á t , h a a l y u k k á r t y á n m á s is m e r te t ő je l ta l á l h a t ó . A t a b u l a t o r ü z e m e lé s é n e k f o l y t a t á s á r a sz o lg á ló v a la m e ly ik v á l t o z a t k iv á la s z tá s a k é t , e g y m á s u t á n b e lé p ő l y u k k á r t y a ö s s z e h a s o n lítá s a ú t j á n t ö r t é n ik . A m e n n y ib e n a k é t l y u k k á r t y a m e g h a tá r o z o tt h e y z e té b e n a l y u k a k e g y b e e s n e k , a g é p ö ssz eg e z. H a e z e n a h e ly e n a l y u k a k n e m e s n e k e g y b e , a k k o r a gép
a korábbi összeget adja ki, és a következő összegezésre tér át. A számítási folyamat során a további számításoknál szükség lehet a kapott közbenső eredmények felhasználására. Ezért az analitikus számoló gépeknél az eredményt nemcsak kinyomtatott táblázatos formában kapjuk, hanem az összegezendő lyukkártyák lyukasztásainak alakjában is, amelyeket a kezelő személy ismét behelyez a gépbe. Az analitikus számológépeknél a számítási folyamat nincs teljesen auto matizálva: az egyik gép által elvégzett számítási szakaszról a másik gép által elvégzett számítási szakaszra való áttérés, valamint az összegezendő lyukkár tyák gépbe helyezése emberi közreműködést igényel. Automatikus gyors működésű digitális számítógépek. Az analitikus számoló gépek a statisztikai, számviteU stb. feladatok megoldásában igen hasznosak voltak, azonban matematikai feladatok megoldására nem mutatkoztak alkal masaknak. A matematikai feladatok megoldására a következők a jellemzők: 1. sok egymás után következő, különböző számtani és logikai művelet elvégzésének szükségessége; 2. a számítások folytatására közvetlenül felhasznált számos közbenső eredmény szükségszerűsége, amit 3. a közbenső számítási eredményektől függően a számítási folyamat során gyakran kell változtatni. Ezek szerint tehát, hogy egy gép teljes mértékben megoldja a matemati kai feladatokat, és valamennyi elemi számtani és logikai műveletet végrehajtsa, a közbenső és kiinduló mennyiségek tárolására megfelelő méretű berendezéssel kell rendelkeznie. Végül képesnek kell lennie arra, hogy a közbenső műveletek eredményeitől függően a további számítás szükséges folytatását automatiku san kiválassza. Ilyen teljesen automatikus számítógépek megjelenése századunk negyvenes éveinek az eredménye. Érdekes megjegyeznünk azt, hogy a korszerű programvezérlésű elektro nikus gépek építésének alapjául szolgáló fontosabb elveket már több mint száz évvel ezelőtt kifejtették. A gondolat felvetője Ch a rles B a b b a g e , az angliai cambridgei Egyetem matematika-professzora volt. 1833-ban különböző függ vények táblázatainak összeállítására szolgáló olyan „analitikus gép” tervezését javasolta, amely a számítást közelítő polinomok útján önműködően hajtotta volna végre. B abbage te rv e nem valósult m eg, m e rt ab b a n az id ő b en ilyen gép m eg a lk o tá sá ra nem v o lta k m eg a szükséges anyagi és m űszaki feltételek. A te rv a n y a g á t csak 1888-ban h o zták nyilvánosságra, jóllehet 1842-ben M en a b rea olasz m atem atik u s B abbage an a litik u s g ép ét ism ertető elő ad á st t e t t közzé. 2*
19
B abbage te rv e a korszerű gépekre jellem ző következő alap v ető géprésze k e t irán y o z ta elő: az á lta la „m ill” -nek (m alom ) n ev e zett a ritm e tik a i egység; az 1000 ö tv en helyértékes decim ális szám k ap a citású m em óriaegység; a p ro g ram ly u k k á rty á k o n való tá ro lá sá ra szolgáló önm űködő vezérlőegység.
A programvezérlés alapelvei (a feltételes ugrás, vagyis az előző eredmé nyektől függő valamelyik számítási menet kiválasztása és az utasítások módo sítása, azaz az utasításokban a címek átalakítása) szintén szerepeltek B abbage javaslatában. A program vezérlésű elektronikus gépek alap g o n d o latait és építési elveit korszerű fo rm áb an N eum ann ism ert am erikai m atem atik u s fog alm azta m eg 1946-ban.
A korszerű programvezérlésű gépek első mintapéldányainak kialakítása sok ember kollektív munkájának gyümölcse. Az automatikus számológépek (Mark-I és Mark-II, Egyesült Államok) eleinte mint szabványos elemekből (relé, számláló, perforáló stb.) készült köz ponti vezérlőrendszerrel ellátott relés analitikus számológépek készültek. A fel adat megoldását a gép különböző elemeivel egymás után végrehajtott művele tekre vezette vissza, amelyeket a gépben korábban beállított munkaprogram nak megfelelően a vezérlőrendszer önműködően kapcsolt be, illetve iktatott ki. A program a feladat megoldására szükséges teljes műveleti sorrendet tartalmazta. Ezt a műveleti sorrendet a gép számok formájában kódolta, és hosszú perforált szalagra lyukasztásokkal írta fel. A gép üzemelése közben a szalag egy irá n y b a n h a la d t előre, és a gép vezérlőegységébe egym ás u tá n , sor b a n a d ta b e az o k at az u ta sítá so k a t, am elyek m eg h atáro zták , hogy m elyik egy ség lépjen üzem be, m ilyen m űveletet, m ilyen szám okkal h a jtso n végre, és hová a d ja á t a m ű v elet eredm ényét. Az ilyen gépek üzem i sebessége igen kicsi v o lt: két szám összeadása 0,3—0,5 s, szorzása 5 — 6 s, osztása 15 s időt v e tt
igénybe. Ezekre a gépekre a program összeállítása, majd a perforált szalagra lyukak formájában való beírása hosszú számítást igénylő, sok feladat esetében nagyon munkaigényes dolog volt. Ez vezetett arra, hogy ezeket a gépeket csak azonos jellegű, azonos program alapján végrehajtott feladatok egymás után történő megoldására alkalmazták. Az ilyen típusú, merev programú gépek ezenkívül nem tették lehetővé azt, hogy a közbenső eredményektől függően a számítási folyamat menetét önműködően változtatni lehessen. A gyakran előforduló műveleti sorrend ismétlésére (például négyzetgyök, logaritmus stb. kiszámításakor) a megfelelő utasítási sorrendet zárt, perforált szalagra írták be. A fő perforált szalagon külön utasításra működésbe lépett az egyik segéd perforált szalag, majd a művelet elvégzése után folytatódott a főszalagról az utasítások kiadása. Az első önműködő számítógépek komoly lúbája volt az is, hogy a memó riaegység kis kapacitású volt. így a Mark-II gépben a belső memóriaegység 100 tízjegyű decimális számot tartalmazott. Ez a gép kb. 13 000 különleges, hatsarkú elektromechanikus reléből állott. Az automatikus számítógépek további fejlődése, a számítási sebesség és a memóriaelem befogadóképességének növelése — továbbá a megoldandó fel adatok körének szélesítése céljából — a programvezérlés rendszerének tökéle tesítése útján történt. A m ikor a gépi elem ekről az elektronikus elem ekre té rte k á t, az a u to m a tik u s szám ítógépek üzem i sebessége hirtelen m egnövekedett. Az elektronikus
20
számolóelemeket trigger-áramkörök alapján építik, amelyeket még 1918-ban M. A. B roncs-B rttjevics szovjet tudós fedezett fel. Míg a gépi számolóelemek ben az egyik számról a másikra való áttérés valamilyen tehetetlen elem (forgó fogaskerék, mozgó reléfegyverzet stb.) helyváltoztatásával kapcsolatos, addig az elektronikus kapcsolásoknál az egyik számról a másikra való áttérés a gyakorlatilag tehetetlenségmentes elektroncsöves rendszer állapotváltozásával jár, ami sokkalta gyorsabban megy végbe, mint a gépi számolóelemekben. Az első' gyors működésű elektronikus számítógépek, amelyekben a szá mító- és memóriaelemek építésére elektroncsöveket használtak fel, az 1945— 1950 években jelentek meg. A gyors működésű számítógépek a számtani műve leteket sokezerszer gyorsabban oldják meg, mint a szokásos gépek. Új, a per forált szalagtól eltérő elvű, egy irányban mozgó memóriaelemek módot nyúj tanak a bennük tárolt utasítások megváltoztatására, és nemcsak a következő, hanem bármilyen más megelőző utasításra való áttérésre. Éppen ezért a gyors működésű elektronikus elemek alkalmazásukkal egyidejűén döntő szerepet ját szottak az automatikus üzemű gép vezérlésének korszerűsítésében. A gép által végzett műveletek teljes jegyzékét tartalmazó, rögzített változatlan program helyett ciklikus programokat is kezdtek alkalmazni, amelyeket maga a gép változtat meg a számítás során. Ezzel mind a program terjedelme, mind az összeállításával kapcsolatos munka hirtelen lecsökkent. A gépek alkalmazásá nak hatásfoka jelentősen megnőtt. A gyors működésű digitális számítógépeknél a feladat megoldási prog ramjának összeállítása azonban még ma is bizonyos jártasságot és a gép szer kezeti sajátosságainak és lehetőségeinek ismeretét megkívánó, meglehetősen bonyolult dolog. Ha a program összeállítása nem szerencsés és ésszerűtlen, a megoldási idő növekszik, és a gép nem termelékenyen üzemel, vagyis az alkal mazás hatásfoka csökken. Az univerzális, gyors működésű digitális számítógépeknek ez a sajátos sága — tehát az, hogy a feladat előzetes előkészítési folyamata bonyolult és munkaigényes — jelenleg az adott osztályú gépek ismert hátránya. Eme hiá nyosság kiküszöbölése céljából a program összeállítására maguknak a számító gépeknek felhasználásával dolgoznak ki módszereket (automatikus programo zás), és a programozási folyamat gépesítésére különleges készülékeket készíte nek. A műveletek végrehajtásának nagy sebessége, az automatikus vezérlés és maguknak a gépeknek a megoldás programjának összeállítására történő fel használási lehetősége lényegesen kiszélesíti a megoldandó matematikai felada tok körét. Lényegesen megváltozott a számítási folyamatok módszere is. A gyors működésű gépeknél például az általánosan elfogadott decimális számrendszer helyett a bináris számrendszert kezdték alkalmazni. Ez a rendszer a gép szerke zetével kapcsolatban számos olyan előnyt jelent, amelyekről később szólunk majd, azonban a kiinduló adatoknak decimális rendszerből bináris rendszerbe és a számítási eredményeknek bináris rendszerből decimális rendszerbe való á t írása további munkát igényel. A műveletek elvégzésének nagy sebessége lehe tővé tette azt, hogy a gép segítségével ez az átalakítás igen gyorsan végrehajt ható. Ezenkívül — minthogy a gyors működésű gépek matematikai feladatok megoldására készülnek, ahol is az eredmény hosszú számolási sorozat után jelenik csak meg,— a számítás kezdetén és végén az egyik számrendszerből a másikba való átírást jelentő kis szakasz pótlólagos beiktatása nem jelenti a fel adat megoldási idejének lényeges növelését. 21
Míg a gyors működésű digitális számítógépek fejlesztésének első éveiben elsősorban univerzális rendeltetésű gépeket dolgoztak ki, addig jelenleg a szakosított digitális, gyors működésű számítógépek is nagy jelentőségre tettek szert. A szakosított digitális gépeket olyan módon építik, hogy a számítási prog ramot részben vagy egészben a gépben — megfelelő kapcsolások segítségével — áramkör útján adják meg, és a programnak ez a része állandó. A következő rendeltetésű szakosított digitális gépeket ismerjük: 1. közönséges differenciálegyenlet-rendszerek megoldására szolgáló gé pek: digitábs differenciál analizátorok; 2. korrelációs függvények és együtthatók kiszámítására szolgáló gépek: korrelátorok; 3. lineáris algebrai egyenletrendszerek megoldására szolgáló gépek; 4. valószínűségszámítási elméleti feladatok és parciábs differenciál egyenletek statisztikai vizsgálati módszerrel (Monte-Carlo-módszerrel) való megoldására szolgáló szakosított gépek. Ezenkívül ismerjük a matematikai időjárás-előrejelzés, információs munka, egyik nyelvről a másikra való fordítás céljaira szolgáló speciális digitá bs számítógépeket is. A szakosított gépek előnye a szerkezeti és üzemeltetési egyszerűség, a kis költség, a kisebb méretek és az adott feladatkör megoldásában a nagy hatásfok. A gyors működésű elektronikus számítógépek fejlesztése nem zárja ki az asztali számológépek és matematikai készülékek szükségességét. Ezek a számí tástechnikai eszközök nem helyettesíthetők a legkülönbözőbb jellegű kisebb segédszámítások elvégzése alkalmával. Az asztak számológépek és matemati kai készülékek jelenleg a méretek csökkenésének, a működési sebesség és az üzemi pontosság növekedésének irányában fejlődnek. Jelenleg a Szovjetunióban számos elektronikus digitábs gépet építenek részben univerzális, részben különleges rendeltetéssel. Műszaki teljesítményü ket tekintve nem maradnak el a legtöbb külföldi gép mögött. A Szovjetunióban 1953-ban a Szovjetunió Tudományos Akadémiája által Sz. A. L ebegyev akadémikus vezetése alatt szerkesztett első gyors működésű elektronikus számítógép ( BESZM ) sokáig Európa leggyorsabb működésű számítógépe volt. A szovjet ipar áhította elő a J. J. B a ziljev szk ij , a Szocialista Munka Hőse vezetése alatt kidolgozott Sztrela jelű gyors működésű digitábs számító gép több példányát, amelyet több szovjet tudományos kutató intézmény siker rel használ fel. A szovjet ipar sorozatban gyártja а В. I. R am ejev mérnök vezetésével kifejlesztett és széleskörűen alkalmazott Urál jelű elektronikus digitábs számí tógépet. I. Sz. Brxjk, a Szovjetunió Tudományos Akadémiája levelező tagjának vezetése alatt dolgozták ki az M-2 (középméretű gép) és az M-3 (kisméretű gép) elektronikus digitális számítógépet, amely különböző feladatok gyakor lati megoldására szintén felhasználható. A szovjet tudomány és technika kiemelkedő eredménye volt 1958-ban az új, másodpercenként húszezer műveletet végző gyors működésű gép kialakí tása.* A gépen számos fontos és bonyolult feladatot oldottak meg. Az elektro nikus digitábs számítógépek gyártása és alkalmazása állandóan bővül. * M -20 (Lektor megjegyzése)
22
Jelen szakasz eredményeit összefoglalva vizsgáljuk meg a korszerű, gyors működésű számítógépek osztályozását. Mint már tudjuk, ezek a gépek a menynyiségek előállítási módszerét tekintve két alaptípusra oszlanak fel. 1. folytonos működésű gépek, amelyek a megoldandó egyenleteket leíró fizikai folyamatokkal állítják elő a matematikai modellt; 2. diszkrét működésű vagy digitális gépek. A gyors működésű digitális gépek működési elvüket tekintve elsősorban a következő csoportokra oszthatók: a) programvezérlésű univerzális gépek, amelyek bármilyen feladat meg oldásának algoritmusát állítják elő; b) szakosított, kötött (program) vezérlésű gépek, amelyek egy vagy több meghatározott feladat megoldásának algoritmusát állítják elő. Rendeltetés szempontjából a korszerű számítógépek a következőképpen oszthatók fel: 1 . emberi segítséggel a gépbe bevitt feladatok megoldására szolgáló számítógépek; 2. közvetlenül, külső tárgyakról a gépbe bevitt információ feldolgozására szolgáló vezérlő gépek. Ez az osztályozás nem veszi figyelembe a gépek szerkezeti ismertető jelek szerinti felosztását. Ezenkívül előfordulhat az is, hogy egyetlen gépben egy idejűén több elvet egyesítenek. így például a Taiphun elektronikus számítógép (USA) diszkrét és folytonos működési elv alkalmazásával készült. Ez idő szerint a legnagyobb fejlődést és alkalmazást két alapvető gép típus érte el: a) a diszkrét működésű program vezérelt univerzáhs számítógépek; b) a folytonos működésű modellező matematikai készülékek. A továbbiakban a diszkrét működésű programvezéreit (számító és vezér lő) elektronikus gépeket vizsgáljuk. Ezeket a gépeket röviden elektronikus digitális gépeknek nevezzük. 2. Az elektronikus digitális gép általános szerkezeti vázlata és a program vezérlés elve 2.1. Szerkezeti vázlat. A működési elv szempontjából bármilyen univer zális rendeltetésű elektronikus digitális gépet mint a következő három alapvető részből összeállított szerkezetet vizsgálhatjuk (lásd a blokkvázlatot): 1. a számokkal végzett műveletek megoldására szolgáló aritmetikai
egység ;
2. a számok befogadására, tárolására és kiadására szolgáló memóriaegység ; 3. a gép önműködő üzemének vezérlésére szolgáló vezérlőegység. Az aritmetikai egység a számokkal végzett számtani és logikai műveletek megoldására szolgál. Az egység a számokat bináris számrendszerben előállító villamos impulzusok számolása alapjára épült. Minthogy a bináris rendszerben minden számjegy csak két érték (0 vagy 1) egyikét veheti fel, az ilyen szám jegyek villamos impulzusok jelenlétével vagy hiányával állíthatók elő. Az elektronikus digitális gépeknél a memóriaegységgel szemben két olyan alapvető követelmény merül fel, amelyeket eddig még nem sikerült teljesen i gyanabban az egységben megvalósítani: 23
a) a számok befogadásának és kiadásának nagy sebességére vonatkozó követelmény; b) a nagy memóriakapacitás követelménye. A g é p e k b e n e z z e l k a p c s o la tb a n a m e m ó ria e g y s é g á l t a l á b a n k é t k ü lö n á lló s z e r k e z e tb ő l á ll: a belső m e m ó ria e g y sé g b ő l és a k ü ls ő m e m ó ria e g y sé g h ő i. A b e lső m e m ó r ia e g y s é g e t á l t a l á b a n g é p i m e m ó r iá n a k , a k ü ls ő m e m ó r ia e g y s é g e t a d a t g y ű jtő n e k n e v e z z ü k .
A belső memóriaegység kapacitása nem nagy; a korszerű gépek többségé nél 1024 vagy 2048 szám egyidejű tárolására számítják. A belső memóriaegység az aritmetikai egységgel áll közvetlen kapcsolatban, és a műveletekben rész vevő számok kiadására, valamint az eredmény befogadására szolgál. Ez a memória általában csak azokat az adatokat tárolja, amelyek a legközelebbi számítási sorozat szempontjából szükségesek. A külső adatgyűjtő gyakorlatilag korlátlan kapacitású, azonban az üzemi sebessége lényegesen kisebb. Az adatgyűjtő az aritmetikai egységgel nincs köz vetlen kapcsolatban. Az automatikus vezérlőegység a számítás folyamán a gép üzemének vezér lésére szolgál. A vezérlőegység gondoskodik a műveletek program szerinti elvég zési sorrendjéről, továbbá az egyes műveletek elvégzése alkalmával a gép üze mét vezérli. Az adatok gépbe vitelére és az eredmények kiírására szolgáló egység köz vetlen kapcsolatban van a gép memóriaegységével. Az adatok bevitelét végző egység arra szolgál, hogy a lyukkártyákon vagy a perforált szalagokon lyukasz tások formájában előállított beviendő adatokat érzékelje, azokat villamos jelek ké alakítsa, és a gép memóriaegységébe adja át. A gép kiolvasó egysége arra való, hogy a villamos jelek alakjában előállí tott, a gépből kiolvasásra kerülő számokat lyukkártyákon vagy perforált szala gokon lyukasztás-rendszerek formájában alakítsa át. Az adatok beírását és kiolvasását gyakran mágneses szalagon jegyzik fel. A szalagra való beírás a gépen kívül különleges berendezéssel történik, a szalagot ezután helyezik a 24
gépbe. A kiolvasás alkalmával, éppen ellenkezőleg, a számokat a gépen belül írjuk a szalagra, és a szalagot a feladat megoldása után a gépből kivesszük. Tekintet nélkül arra, hogy a feladat megoldása — ami a program által előirányzott műveletek egymás utáni megvalósításából áll—önműködően törté nik, a gépeken kézi vezérlő és ellenőrző rendszer is van. A kézi vezérlés a gép indítására és megállítására szolgál. Ez teszi lehetővé azt, hogy a megadott programot lépésenként valósítsuk meg abban az esetben, ha szükségszerűvé válik a gépi üzem ellenőrzése. A számítógép tulajdonképpeni részegységeit képező és egymással főveze ték útján összekötött vizsgált egységeken kívül bármely elektronikus digitális számítógép még más, olyan külső egységeket is tartalmazhat, amelyeknek a géppel nincs villamos kapcsolatuk. A külső egységek a kiinduló adatokat a gépi bevitelre előkészítik, és a megoldás eredményeit előállítják. Ezek az egységek általában lassabban mű ködnek, mint maga a gép, és éppen ezért néhány gépnél párhuzamos üzem ben több egység áll rendelkezésre a feladatok egész sorának előkészítésére és az eredmények előállítására. A számítási programot ugyanolyan módon visszük a gépbe, mint a többi kiinduló adatot. A külső egységekben a papírra leírt kiinduló adatokat és a programot elő ször lyukkártyákra, mágneses szalagokra vagy perforált szalagokra visszük át, és ezekről írjuk be a továbbiak során az adatokat a gép memóriaegységébe. A külső egységekhez tartozik az a nyomtató berendezés is, amely a feladat megoldásának a gépben lyukkártyákon vagy perforált szalagokon lyukak, eset leg mágneses szalagokra való feljegyzés formájában adott eredményeit számtáblázatok alakjában nyomtatja ki. 2.2. A program vezérlés elve. Vizsgáljuk meg részletesebben a programvezérlés elvét. A gép véges számú alapműveletet: összeadást, kivonást, szorzást, osztást, a számnak a memóriaegység egyik helyéről a másikra való átvitelét és más hasonló műveletet hajt végre. A feladat megoldását tehát előzetesen ezeknek a műveleteknek végrehajtására kell visszavezetnünk. A gép minden műveletet különleges vezérlő jel — utasítás — hatására hajt végre. Az utasítás a gépbe való bevitelre alkalmas alakban előállított olyan információ, amely a gép működését valamilyen időszakasz tartamára meg határozza. Az utasítás általában a gép által érzékelhető szimbólumcsoport, amely bizonyos alcsoportokra osztódik. Az egyik alcsoport a műveleti kód, amely a gép tevékenységét — a művelet jellegét és formáját — határozza meg; a többi alcsoport: az úgynevezett címek arra utalnak, hogy a gép a művelet elvégzésére a számokat honnan vegye, és a művelet eredményét hol tárolja. Cím formájá ban a memóriaegység ama rekeszeinek számát adhatjuk meg, ahol ezeknek a számoknak lenniük kell. A program utasításait a gépbe való bevitel céljából számok alakjában kódoljuk, és a gépben a memória rekeszeiben ugyanúgy tároljuk, mint a közönséges számokat. Az utasítások sorrendje alkotja a gép üzemelésének programját. A prog ramot előzetesen kell összeállítani minden feladatra, és a géphe a feladat meg oldása előtt a kiindulási adatokkal együtt kell bevinni; ezután a gép minden műveletet önműködően hajt végre.
25
A program utasításai a végrehajtás során egymásután — előzetesen összeállított sorrendben — kerülnek ki a gép memóriaegységéből. Minden uta sítás alkalmával az utasítás címeinek megfelelően választott számok a memó riaegységből az aritmetikai egységbe jutnak, amely elvégzi velük a műveleti kóddal meghatározott műveletet. A művelet eredménye ismét a memóriaegy ségbe kerül, mégpedig a megfelelő utasítási címmel megadott számú rekeszbe. A művelet eredményének a memóriaegységbe való beírásával az adott utasítás teljesítése befejeződik, a vezérlőegység ezután a memóriaegységből a következő utasítást hívja le. A gép az aritmetikai műveleti utasításokon kívül az önműködő üzemelés biztosításához szükséges más jellegű utasításokat is végrehajt (az adatoknak a memóriaegység egyik helyéről a másikra való átvitelére, az adatoknak a gépből való kiírására, a megállásra stb. vonatkozó utasítások). 3. Az elektronikus digitális gépek alkalmazása 3.1. A digitális gépek alkalm azása tudom ányos és m űszaki kutatásokra, feldolgozásokra. A tudomány és a technika fejlődésével állandóan növekszik
a bonyolult számítások megoldásának szükségessége. Amint az alkalmazott matematikai apparátus bővül, és bonyolultabbá válik, úgy növekszik a kuta tás matematikai módszereinek aránya, és emelkedik a vizsgálat pontosságával és valamilyen folyamatot befolyásoló különböző tényezők egyre nagyobb számának figyelembevételével kapcsolatos követelmény is. Ugyanakkor a legtöbbször a feladat megoldásának eredményei gyakorlatilag csak akkor érté kesek, ha a számítás megfelelő gyorsasággal történik. Különösen fontossá vált a bonyolult számítások végrehajtása az utóbbi években az atomfizika, a rádiólokáció és a rakétairányító technika fejlődésével kapcsolatban. A matematikai elmélet fejlődésének jelenleg elért színvonala elvben lehe tővé teszi csaknem bármilyen probléma vizsgálatát, vagyis a meglevő matema tikai módszerek lényegében lehetőséget adnak minden feladat esetében a fizikai tartalomból kiindulva arra, hogy a feladatot egyenletrendszerek alakjában fogalmazzuk meg. A felállított egyenletek gyakorlati megoldása azonban gyak ran hatalmas munkával jár. Másrészt viszont a meglevő matematikai számí tási módszerek eléggé általánosak, és lehetőséget nyújtanak arra hogy a legkü lönbözőbb feladatokat tetszőleges, előre megadott pontossággal oldhassák meg. A szokásos kézi számolóeszközökkel azonban a számítási megoldás végrehaj tása gyakran olyan sok időt igényel, hogy a feladat gyakorlatilag megoldhatat lannak tűnik. A súlypont körüli lengőmozgás és az automatikus pilóta működésének figyelembevételével a távvezérelt aerodinamikus tárgyak térbeli mozgását leíró differenciálegyenlet-rendszerek például olyan bonyolultak, hogy analitikai megoldásuk teljesen lehetetlen. Az ilyen egyenletek közelítő numerikus meg oldása az általános számító irodák több évi munkáját igényelné. Számos feladat megoldása még a legutóbbi időben sem merült fel, mint hogy a megoldás elfogadható határidőn belül gyakorlatilag lehetetlen. Az ilyen feladatokat egyszerűsítve oldották meg: különleges eseteket vizsgáltak, egy szerűsítő feltevésekkel éltek, pl. a nemlinearitást elhanyagolták, és nem vették figyelembe bizonyos tényezők hatását stb. Ilyen egyszerűsítések mellett csak 26
a feladat minőségi megoldását kapták meg, és gyakran ez a megoldás a tény legestől minőségileg is különbözött. Az elektronikus számítógépek hirtelen ugrást biztosítanak a fizika és mechanika fejlődésében. Elsősorban e tudományok terén nyitották meg az általános matematikai módszerek széleskörű, gyakorlati alkalmazásának lehe tőségét. Az elektronikus számítógépek alkalmazása a műszaki tervezés folyama tának új módszerű szervezését is lehetővé teszi: a különböző szerkezeti változa tok gyors kiszámításával és a változatok egymás közötti összehasonlításával kiválaszthatjuk a legkedvezőbbeket, és jelleggörbéiket pontosan kiszámíthat juk. Ennek során az egyes változatok egymás közötti összehasonlításának és a legkedvezőbb változat kiválasztásának folyamata szintén automatizálható, és a megadott program szerint magával a számítógéppel végrehajtható. Az elektronikus számítógépek nagy szerepet játszanak magának a mate matikának fejlődése szempontjából is. Itt figyelmen kívül hagyjuk a számítási módszerek fejlődését, csupán a gépekkel végzett, tisztán matematikai kutatási feladatokat szolgáló, különböző matematikai kísérleteket említjük meg. Ilyen feladatok a számelméletben, az analízisben és a matematikai logikában fordul nak elő. Az elektronikus számítógépek alkalmazásának gyakorlatából és szerkeze tük sajátosságainak vizsgálatából kitűnik, hogy a legcélszerűbb az, ha ezeket a gépeket nagy számítási munkát igénylő, de azonos program szerint végrehaj to tt feladatok különböző változatainak megoldására használjuk fel. Ha figyelembe vesszük azt, hogy az adatok bevitelére és kiírására szol gáló egység a gép számítási sebességéhez viszonyítva lassú, az elektronikus digitális gépet olyan feladatok megoldására célszerű beállítani, amelyek kis számú kiinduló adatot és megoldási eredményt tartalmaznak, de ugyanakkor a számítási munka jelentős. Az elektronikus digitális gépekkel hatásosan meg oldható jellegzetes feladatok a következők: 1. Algebrai egyenletek gyökeinek kiszámítása. Erre sok feladat megoldásá nál van szükség. Nagy fokszámú algebrai egyenletek numerikus megoldása hatásosan iterációs módszerekkel történik (Newton-módszer, Horner-módszer, Lobacsevszkij-módszer). 2. Lineáris algebrai egyenletrendszerek. Ezek a feladatok a tudományban és a technikában nagy jelentőségűek különböző önműködő vezérlőrendszerek vizsgálata, megfigyelési eredmények statisztikai feldolgozása alkalmával, topográfiai számítások végrehajtása esetén. Az algebrai egyenletrendszerek megoldásának lehetséges módszereit két csoportra oszthatjuk: iterációs és kiküszöbölő módszerekre. Mindkét eljárás kidol gozott programmal rendelkező szabványos számítási műveletek sorozatából áll. 3. Közönséges differenciálegyenlet-rendszerek. A matematikai feladatok eme csoportja a tudományban és a technikában fontos és elterjedt. A közönsé ges differenciálegyenleteket széleskörűen felhasználjuk mind az irányított, mind az irányítatlan lövedékek külső és belső ballisztikájában, az aerodinami kában, a lengések nemlineáris elméletében, az önműködő szabályozás elméleté ben stb. Közönséges differenciálegyenletek számítási megoldására a jól ismert Adams—Stormer, Runge—Kúttá stb. módszereket használjuk. Az összeállított programok bármilyen számú egyenlet integrálását lehetővé teszik, sőt a számí 27
tásuk lépésközének kiválasztását is önműködően végzik. Mindezek a mód szerek a számítás ciklikusságának sajátossága miatt igen alkalmasak arra, hogy a gépben felhasználjuk. 4. A különböző típusú parciális differenciálegyenleteket a véges differen ciák módszere alapján oldjuk meg. A parciális differenciálegyenletek perem feladatainak megoldása igen nagy jelentőségű az atomfizikában, a hidrodina mikában, a gázdinamikában, a tudomány és technika más területein. A Dirichlet-feladatnak, a Neumann-feladatnak, a Laplace- és Poisson-egyenlet harmadik peremfeladatának, a biharmonikus egyenlet megoldásának, a hővezetés egyen letének, és a hullám-, valamint a távíróegyenletnek elektronikus digitális gépek segítségével való tömeges megoldása már teljesen átment a gyakorlatba. H ip e r b o lik u s je lle g ű e g y e n le te k e t a k a r a k te r is z tik a - m ó d s z e r a l a p já n s ik e re s e n o ld h a tu n k m e g e le k tr o n ik u s d ig itá lis g é p e k k e l. (Cauchy-feladat, Niemann-feladat és k e v e r t f e la d a to k ) .
5. A többszörös integrálok értékének kiszámítása. A tüzérségnél a tüzelés hatásfokának meghatározása. I l y e n f e la d a to k m e g o ld á s á r a k é t m ó d s z e r t a lk a lm a z h a tu n k : a k ö z v e tle n ö ssz eg e zé s m ó d s z e r é t és a s ta t i s z t i k a i v iz s g á la ti m ó d s z e r t ( Monte-Carlo-módszert). A k ö z v e tle n ö ssz e g e z é s m ó d s z e r e e lv b e n m e g fe le lő p o n to s s á g o t b iz to s ít, a z o n b a n m é g v is z o n y la g e g y s z e rű f e la d a to k e s e té b e n is ig e n n a g y g é p i id ő -
ráfordítást (napokat, vagy hónapokat) igényel. A Monte-Carlo-módszer a gép segítségével az adott integrálokkal leírt véletlen folyamat felidézéséhez vezet, kis pontosságot nyújt, de a feladat megoldási idejét erősen csökkenti. 6. Különböző függvénytáblázatok összeállítása. A S z o v je tu n ió T u d o m á n y o s A k a d é m iá ja BESzM e le k tr o n ik u s s z á m ító g é p é n e k s e g íts é g é v e l p é l d á u l a Fresnel-féle integrálok p o n to s t á b l á z a t á t á l l í t o t t á k ö ssz e . A z in te g r á lo k 50 0 00 é r té k é n e k k is z á m ítá s a m in d ö s s z e k b . 2 ó r á s g é p i i d ő t ig é n y e lt.
3.2. A digitális gépek alkalmazása információk feldolgozására. Az elektro nikus digitális gépeket nagy hatásfokkal használjuk fel a legkülönbözőbb típu sú, de nagy mennyiségű információk gyors és pontos feldolgozására. Gazdasági téren ezeket a gépeket nyilvántartási és tervezési feladatokra, valamint a munkabérek kiszámítására, a mellékköltségek és a jelentések össze állítására, a gyártás terhelési grafikonjainak és a munkaerő kihasználásának megállapítására, a vasútmenetrend szerkesztésére stb. használják fel. Ezeket a munkákat általában különböző változatok esetére (különböző kiinduló adatok nál), de azonos program szerint hajtják végre. A gépek bevezetése gyakran a kézi munkánál kialakult ügyintézési sor rend és irattári rend gyökeres átalakításával jár. A tervezési munka gépesítésére szolgáló korábbi eszközökkel szemben az elektronikus digitális gépek nemcsak a számítási munka elvégzését biztosítják, de — ami a legfontosabb — a fel dolgozott adatokat rendszerezik és elemzik is, egészen a befejező beszámoló, tájékoztató vagy utasító dokumentumok kiadásáig. Ezzel kapcsolatban a gazdasági és tervezési feladatok programozása jóval bonyolultabb dolog, mint a matematikai számítások programozása. Miután azonban az ügyviteli infor mációk feldolgozásának gépi módszerét már kidolgozták, és a programot össze állították, a gépek alkalmazásának hatásfoka igen nagy, és a gépek bevezetésé nek költségei gyorsan megtérülnek. A speciális digitális elektronikus gépek létrehozása és a gazdasági, vala mint az irodai feladatok megoldására szolgáló algoritmusok kidolgozása mellett 28
az említett területen a gépek bevezetésénél széleskörű tudományos kutató munkára van szükség a gazdasági és a statisztikai matematika módszereinek alkalmazása, továbbá a különböző vezérlési folyamatok elemzése területén. Ezzel kapcsolatban az alkalmazott matematika számos területe gyors fejlődés nek indult. Ilyen például a játékelmélet, a lineáris programozás, a dinamikus programozás stb. A játékelmélet valamilyen vezérelt rendszerrel szemben vívott küzdelem folyamatát meghatározó algoritmus szerkesztési módszereinek elméleti alapja. A küzdelmi folyamatot meghatározó algoritmus sajátossága annak szükséges sége, hogy az említett rendszer célszerű és szervezett ellenhatását, valamint a rendszer viselkedésére jellemző tájékoztatás bizonyos hiányosságát figyelem be vesszük. Az utóbbi körülmény az elméleti valószínűségszámítási vizsgálati módszerek alkalmazását teszi szükségessé. Hasonló feladat nemcsak a fegyveres harc vagy a konkurrencia elleni gazdasági harc területén lép fel; játékelméleti feladatot jelent sok gazdasági vezetési, iparszervezési és tudományos kutatási stb. kérdés is. A lineáris programozás az optimalizálási feladatok ama széles osztályának megoldási módszereit foglalja magában, amelyben nagyszámú, egymással lineáris kapcsolatban álló, az adott korlátozó feltételeknek alárendelt változó szerepel. A lineáris programozási feladatok megoldása során a változók ama értékeit kell megtalálnunk, amelyek mellett az adott megoldási változat minő ségét meghatározó valamilyen (pl. termelési, szállítási stb. költség), a változók tól lineárisan függő mennyiség a legnagyobb (legkisebb) értéket veszi fel. A lineáris programozás módszereivel oldjuk meg a teherszállítás, a gyártás kapacitás, az anyag, a rendelések stb. elosztásának kérdését. A dinamikus programozás feladata a lineáris programozás kérdésének olyan irányú továbbfejlesztése, hogy vizsgálatainkba az időt mint elemet vesszük be, és a megoldási folyamatot sorrendi kiválasztás formájában állítjuk elő. A gépek bevezetésével a matematika felsorolt ágazatain kívül az ügy viteli információ feldolgozási folyamatainak automatizálása területén nagy jelentőségűek a legkedvezőbb kódolási, átviteli és információ feldolgozási mód szereket meghatározó információelmélet és az információ feldolgozási rend szerek célszerű kialakítására vonatkozó elvek. A gépek bevezetése jelenleg elszigetelten, azaz úgy történik, hogy egyes számító központokban vagy intézményekben szerehk fel. Az adatok gépbe vitele és az eredmények kiadása kézzel, emberi közreműködéssel valósul meg. A gépeknek a hivatali munka automatizálására történő felhasználásával kap csolatos következő lépés az információ összegyűjtésére és feldolgozására szolgáló olyan automatizált rendszerek kidolgozása lesz, amely az elektronikus digitális gépen kívül automatikus távközlő vonalakkal és az adatoknak a gépbe való beadására, valamint az eredmények kiírására különleges automatikus berende zésekkel is rendelkezik. A tudomány és technika fejlődésével kapcsolatban igen fontos az óriási kapacitású, hosszú időtartamú memóriaegységgel ellátott tudományos infor mációs gépek alkalmazása. Jelenleg valamennyi tudományágban a nyomtatott anyag hihetetlen arányú növekedése tapasztalható és az anyagok megjelenésének üteme állan dóan emelkedik. A szakemberek már nincsenek abban a helyzetben, hogy mód szeresen áttekintsék még a megfelelően szűk körre szorítkozó kérdésekkel fog lalkozó irodalmat is. A helyzet lényegesen bonyolultabbá válik azáltal, hogy 29
a különböző tudományok állandó osztódása és kölcsönös kapcsolatuk oda vezet, hogy ugyanarra a kérdésre vonatkozó tájékoztatással a legkülönbözőbb tudo mányterületeken találkozhatunk. Bibliográfiai tájékoztatók és információgyűjtemények a kérdést nem oldják meg, mert áttekintésük sok időt vesz igénybe, viszont a bennük levő tájékoztató anyag távolról sem teljes, és gyakran elavult. Sokszor könnyebb valamilyen elv újbóli kialakítása vagy valamilyen fizikai törvényszerűség ismételt tisztázása, mint a vonatkozó irodalmi anyag megkeresése, még abban az esetben is, ha tudjuk, hogy ilyen anyag létezik. A többszörösen ismételt tudományos felfedezések és találmányok korunk tudo mányos és műszaki fejlődésének jellemző vonásává váltak. A tudományos információs gépeknek biztosítaniuk kell a tudományos ismeretek rendszerezését és az ismétlődő, értéktelen — a hasznos tájékoztatás kikeresését hátráltató — anyag kirostálását. Ezeknek a gépeknek gondoskod niuk kell az adott témakörrel kapcsolatos dokumentáció és bibliográfia gyors vizsgálati és elemzési lehetőségéről. A gép mikrofilm vagy a szokásos nyomta tott szöveg formájában adja meg a szükséges rövid tájékoztatást. A kinyomtatott munkák tartalmi kivonatát a közlemény arányában rövidítve, kódolt alakban kell a gépbe vinni. A feladott kérdéseket is külön leges kódolt alakban adjuk a gépbe. A kódolt alak határozza meg a válasz meg keresése során a gép munkájának sorrendjét. A választ a gép program segítsé gével keresi meg, a program tehát bizonyos mértékben a hasonló feladatot megoldó ember szellemi munkájának folyamatát reprodukálja. Ma már kidolgozták azokat a műszaki eszközöket, amelyek lehetővé teszik a műszaki információs gépek kialakítását. A kódolás és az információkeresés programjának kidolgozása igen nehéz. Ezt a kérdést első lépésben az erősen szakosított tudományos információs gépek létesítésével oldják meg, és ezután fokról fokra szélesítik ki az átfogott kérdések területét. 3.3. A gép alkalmazása a gyártási folyamatok önműködő vezérlésére. A gyártási folyamatok automatizálása a műszaki fejlődés alapvető iránya vala mennyi iparág területén. Ma a technika olyan fejlődési szintet ért el, hogy sok esetben a megmunkálás gyorsaságát és a pontosság emelését, a termelékenység és a különböző berendezések átbocsátó képességének növelését a folyamat üze mét irányító, a berendezést vezérlő ember fizikai lehetőségei korlátozzák. Már megérett annak a szükségszerűsége, hogy a gyártási folyamatok terén önműkö dő vezérlőrendszerekre térjünk át, tehát olyan rendszereket létesítsünk, ame lyek közvetlen emberi közreműködés nélkül üzemelnek. Az ilyen jellegű önmű ködő vezérlőrendszerek létesítésének alapját az elektronikus számítógépek jelentik. A szabályozási folyamat általában két szempontot foglalhat magába: 1. a vezérlőparancs kidolgozását és a parancs átadását a végrehajtó vezé relt tárgynak; 2. információszerzést a vezérelt tárgy tényleges állapotáról és a kiadott parancsok végrehajtásának ellenőrzését. A folyamat első részét a vezérlő szerv és a vezérelt tárgy között egyenes (utasító) kapcsolat segítségével valósítjuk meg. A folyamat másik felét a vezérelt tárgyról a vezérlő szervre irányuló negatív (információs) visszacsatolás valósítja meg. Az automatikus rendszerek működési elvüket tekintve három alaptípus ra oszthatók: 30
1. Merev vezérlőrendszerek, amelyeknek nincs zárt visszacsatolásuk. Ezek a rendszerek általában olyan korábban megadott, rögzített, változatlan prog ram alapján működnek, amely nem függ az üzemi feltételek változásától és a vezérelt tárgy tényleges mozgásától. 2. Önműködő vezérlőrendszerek, amelyeknek van visszacsatolásuk, azon ban szerkezeti kapcsolásuk változatlan, rögzített. Ilyen önműködő berendezé sek a vezérelt tárgy mozgását, a tárgy tényleges pályájának a megkívánttól való eltérése figyelembevételével szabályozzák valamilyen, korábban megállapított, az egész rendszerre érvényes külső, üzemi feltételek mellett. 3. Önprogramozó automatikus vezérlőrendszerek. Ezek a rendszerek nem azt veszik figyelembe, hogy a vezérelt tárgy tényleges mozgása a megkívánttól mennyiben tér el, hanem számításba veszik a teljes automatizált rendszer mint egység, külső üzemi feltételeiben való lehetséges változását is. E rendszerek belső szerkezetük átalakítása útján önműködően alkalmazkodnak ezekhez a változásokhoz. Az elektronikus digitális gépeket elsősorban az első és a harmadik típusú önműködő szabályozó rendszerekben alkalmazzák. Az első típusú önműködő rendszereknél a számítógépek a programkiadó berendezés szerepét játsszák (utasító számítógépek) vagy pedig a megfelelő utasítások kidolgozására szükséges információt feldolgozó berendezés céljára használják azokat. Világos, hogy a negatív visszacsatolás hiánya esetén a fel dolgozandó információ nem tartalmaz magának a szabályozott tárgynak a pályájára jellemző tájékoztatást. A digitális gépek rögzített programozásra való alkalmazására a fémmeg munkáló szerszámgépek programvezérlése szolgáltat példát. Itt a digitális gépeket a munkadarab méreteire vonatkozó adatok feldolgozására és a szer számgép megfelelő előtolásának kiszámítására használják. A harmadik típusú automatikus rendszerben — az önprogramozó rend szerben — az elektronikus digitális gépek szervesen beilleszkednek az önmű ködő vezérlés zárt hatásláncába, és ezek a gépek a rendszer legkedvezőbb munkamenetének kiválasztását célzó variációs feladat megoldására szolgálnak. Erről a későbbiekben részletesen lesz szó. A második típusú automatikus rendszerekben az utóbbi időkig lényegé ben folytonos működésű elektronikus számológépeket alkalmaztak, jóllehet elvileg itt is alkalmazhatók a diszkrét működésű berendezések. Az önműködő vezérlésen kívül az elektronikus digitális gépek hatásosan alkalmazhatók bonyolult gyártási, energetikai vagy haditechnikai rendszerek félautomatikus vezérlésére és ellenőrzésére. Ebben az esetben a vezérlés és a vég leges döntés elfogadása az emberre marad. A digitális gép csupán a különböző helyekről kapott nagyszámú adatot gyűjti össze, rendszerezi és dolgozza fel abból a célból, hogy ezeket az adatokat áttekintés és vizsgálat szempontjából megfelelő formában (pl. az oszcillográf ernyőjén görbe formájában) állítsa elő. A gépre lehet bízni a rendszernek a kezelő személy egyik vagy másik lehetséges döntése esetében érvényes következő viselkedésre vonatkozó változatok kiszá mításának feladatát azzal, hogy a kezelő számára a berendezés elemzését és a végleges döntés elfogadását megkönnyítsük. Az elektronikus digitális gépek alkalmazása automatikus vezérlés céljára új lehetőségeket és távlatokat nyit az automatika fejlődésében. A mostanáig épített automatikus rendszerek gyakran igen bonyolultak, és a korábban ismert feltételek melletti üzemeltetésre készültek. Ezek a rend 31
szerek’az üzemi feltételek megváltoztatására a korábban beállított szabályok nak megfelelően reagáltak, viszont nem foglalták magukba azt a lehetőséget, hogy önműködően alkalmazkodjanak a szabályozandó tárgy sajátságainak és a külső feltételeknek megváltozására. Az elektronikus digitális gépek alkalmazása lehetővé tette az optimális szabályozás megvalósítását, tehát azt, hogy a szabályozás a lehetőségek előze tes becslésével történjék. Az optimális szabályozás lényege a következőkben áll. Amikor a számítógép a vezérelt tárgy tényleges állapotára és a külső berendezésre jellemző adatokat megkapja, kiszámítja a rendszer következő viselkedésének lehetséges változatait, és a különböző szabályozási lehetőségek esetében extrapoláció segítségével figyelembe veszi a külső körülmények meg változását. A digitális gép a választás alapján vagy a korábban megadott fel tételek (pl. az átmeneti jelenség minimális ideje) figyelembevételével megvizs gálja az adódó megoldásokat, és kiválasztja a szabályozási folyamat legkedve zőbb változatát. Az ilyen szabályozó rendszerek önprogramozó sajátságokat mutatnak, azaz képesek arra, hogy a legkedvezőbb folyamat elérése céljából paraméterei ket automatikusan megváltoztassák. Az automatikus vezérlőrendszerek alkalmazása szempontjából az elektro nikus digitális gépek legnagyobb előnye a felhasználás nagyfokú hajlékony sága. Egy programvezérlésű digitális gép egész sor folytonos működésű számí tóberendezést helyettesíthet, különösen akkor, ha e készülékeknek nem kell szükségszerűen azonos időpillanatban üzemben lenniük. Erre a célra elég az, ha a digitális számítógépbe megfelelő programgyűjteményt adagolunk, és a szükséghez képest a gép üzemét a kívánt program szerint átkapcsoljuk. így például a DIGIMAG (USA) elektronikus számítógép a repülőgépek vezérlésére készült, és kezdetben a navigációs feladatok, később pedig a bombavetési fel adatok megoldására kapcsolható. Ha az elektronikus digitális gépeket valamilyen folyamat önműködő vezérlésére alkalmazzuk, ennek szükségszerű feltétele az, hogy az adott folya matnak teljes matematikai leírása legyen (legyen a folyamatnak algoritmusa). A folyamat tehát teljesen meghatározott, a rendszer viselkedését minden lehet séges helyzetben leíró, egyértelmű szabályok összessége formájában legyen elő állítható. A legkedvezőbb vezérlés biztosítására a gép munkaprogramjába bizonyos általános szabályokat is be kell adnunk, amelyek a rendszer viselke dését minden konkrét esetben jellemzik, és amelyek az említett szabályokon kívül a szabályok a külső feltételek jellegétől és a tárgy paramétereitől függő változására vonatkoznak. A berendezés változásakor tehát meg kell adnunk a rendszer bizonyos „magatartási vonalát” . Meg kell jegyeznünk, hogy a digitális gépek automatikus vezérlés céljaira való gyakorlati alkalmazása, — az ilyen felhasználás elvi lehetőségeitől elte kintve — néha komoly nehézségekkel jár. Ezek a nehézségek lényegében két irányúak: először a gépek teljesen automatizált vezérlésre való alkalmazása gyakran szükségessé teszi az adott rendszer meglevő üzemi kapcsolásának gyökeres átdolgozását, másrészt gyakran az a helyzet, hogy a vezérlés vala milyen logikai függvényének megvalósítására szükséges digitális gép szerkezeti tekintetben igen bonyolult, ugyanakkor az emberi vezérlés ezt a függvényt viszonylag könnyen teljesíti. Éppen ezért, ha a digitális gépeket automatikus 32
rendszerben alkalmazzuk, célszerű az emberi és a gépi tevékenység gazdaságos összehangolásának biztosítására törekednünk. A gépre kell bíznunk a munka legmunkaigényesebb egyrétű részét, ahol nagy megoldási sebességre és nagy memóriakapacitásra van szükség. Jelenleg az elektronikus digitális gépek széleskörűen elterjedtek a gép gyártásban a fémmegmunkáló szerszámgépek automatikus vezérlésére, a vegy iparban, a kőolaj feldolgozásban és a kohászatban, az acélöntésben a nagyolvasztók, a különböző vegyi termékek gyártási folyamatainak automatizálá sában és az ipar egyéb területein is.
3 E ito v — К rinyickij
33
I. F E JE Z E T
AZ ELEKTRONIKUS DIGITÁLIS GÉPEK ARITMETIKAI ALAPJAI 4. Helyértékes számrendszerek A számok elnevezésére és leírására vonatkozó eljárások összességét számolásnak nevezzük. Az olvasó előtt legalább két számolási rendszer, számrendszer ismeretes: a római számok rendszere és a tízes helyértékes számrendszer. 4.1. A róm ai szám rendszer. A római számrendszerben különböző egész számok leírása számjegyek segítségével történik: I, V, X, L, С, I), M, amelyek sorrendben az egy, öt, tíz, ötven, száz, ötszáz, ezer számokat jelölik. Több egymás után álló azonos számjegy e számjegyek összegét jelöli. Például II = I - f - I = kettő; XXX = X - f X + X = harminc. Olyan számjegy-pár, ahol a kisebbik számjegy (a kisebb számot jelölő számjegy) a nagyobbiktől (a nagyobbik számot jelölő jegytől) balra áll, a megfelelő számok különbségét adja. Például IV = V — I = négy; XL = L — X = negyven; CM = M — — C = kilencszáz. Az az írásmód, amikor a nagyobb számjegy (vagy nagyobb számjegyek csoportja) a kisebb számjegytől (vagy kisebb számjegyek csoportjától) balra áll, a megfelelő számjegyek (vagy számjegy-csoportok) összegét jelöli. Például XI = X + 1 = tizenegy; XIV = X(IV) = X -f-IV = = tizennégy; XLIV = XL + IV = negyvennégy. Az MCMLVII számjegy a következő módon olvasható vissza:
és az 1957 számot jelöli. A római számrendszer használata kényelmetlen, és jelenleg úgyszólván sehol sem használják. 4.2. A helyértékes számrendszer fogalma. A helyértékes számrendszer megismerését az általánosan elfogadott tízes — decimális — számrendszerrel kezdjük meg. Ez a számrendszer gyökerében különbözik a római számrendszer től. A számok leírására tíz különböző számjegyet használ fel: 0 , 1, 2 , 3, 4, 5, 6 , 7, 8 és 9. A számjegyek nullától kezdve és kilenccel végezve tíz egymásután következő egész számot jelölnek. A tíz számot már két számjeggyel ,,10”-zel jelöljük. A többi számot a számjegyek egymásutáni alakjában írjuk le, amelyet a tizedes pont egész és tört részre oszt. A decimális számrendszert azért nevez zük helyértékes számrendszernek, mivel minden számjegy értéke ebben a szám sorban elfoglalt helyzetével (pozíciójával) változik. így például a 121,12 jelölésben bal oldalon az első helyen álló egyes, a számban foglalt százasok mennyiségét, a tizedespont előtt álló egyes az egyesek mennyiségét, a tizedes34
pont után álló egyes pedig a tizedestörtek mennyiségét adja. A 121,12 szám jegysorozat nem más, mint a következő kifejezés rövidített írásmódja.
A helyértékes számrendszerben alkalmazott különböző számjegyek mennyiségét a számrendszer alapjának nevezzük. (A decimális számrendszer alapja a tízes szám.) A tízes számrendszerben valamennyi lehetséges szám jelölésének összes ségét a következő lépésekből állítjuk össze: 1. tíz jelet (számjegyet) választunk: 0, 1, 2, 3, 4, 5, 6 , 7, 8 , 9, amellyel nullától kilencig tíz egymásután következő egész számot jelölünk; 2 . a tízes szám (a rendszer alapja) számára a „ 10 ” jelölést vezetjük be, amellyel a már kialakított jelölési rendszerünket csak kevésbé gyarapítottuk, viszont nagyon fontos lépést tettünk a számrendszer kialakítása területén. 3. Most a hatványozás műveletének segítségével sokkal szélesebb szám csoport jelölését vezetjük be az alábbi feltételezéssel:
(I tt az a10, a 9 . . ., №0, a_x. . . a_9, minden betűje a rendszer tíz alapszámá nak bármelyikével helyettesíthető)-. Ez az eljárás — egyebek között — a nullá tól kezdődően (amikor a10 = a9= . . . = a, = a0= a_x = . . . = a_10= 0 ) egészen 99999999999-ig (amikor a 10 = a9 — . . . = a0 = 9; a_x = a „ 2 = . . . = a_10= = 0 ) minden egész szám jelölését megadja; 4. Az egész számok már megkapott jelölését az (1.1) képlethez hasonlóan 0 , 1, . . . , 10 számokkal használjuk fel a kitevő jelölésére, ezzel a jelöléssel ellátott számok körét még jobban kiszélesítjük; ez az eljárás tetszőlegesen sokszor ismételhető. A számok jelölésének kialakítására vonatkozó eljárás előbbi leírásából világosan látjuk, hogy a jelöléssel ellátott egész számok között bármilyen nagy szám megtalálható. Könnyű igazolni, hogy nincs egyetlen egy olyan egész szám sem, amelyet a kialakított jelölési rendszer nem tartalmazna. Ebből a célból először bebizonyítjuk, hogy ha az M egész számnak van jelölése, akkor M -j- 1 szám szintén jelölhető. Legyen a jelölés ak ak_x . . . a2ax a0, akkor
Vizsgáljunk meg két esetet. 1. Az i f szám jelölésének utolsó számjegye 9-nél kisebb: akkor
3*
■35
ahol a'0 egyetlen számjeggyel jelölt szám. Következésképpen
Ez meggyőz bennünket arról, hogy amennyiben az M számra vonatko zóan a0 < 9, akkor az M -f- 1 szám jelölése a tízes számrendszerben ak й^_1 . . . .. ,аг аха'й. 2 . Az M szám ábrázolásának utolsó számjegye kilences: a0 = 9. A nagyobb általánosság kedvéért úgy vesszük, hogy ahol
ahol a, -f 1 = a\ egyetlen számjeggyel jelölt szám. Következésképpen a második esetben az M
ak ak+1 ■■■«(' 0 .. . 00.
1 szám jelölése:
Legyen most N tetszőleges egész szám. Az egységet először adjuk hozzá az 1 számhoz, majd a kapott első összeghez, továbbá a kapott második összeg hez stb., végül a számítás végső összegeként N értékét kapjült meg. Minthogy azonban az 1 számnak önálló jelölése van, és így minden egymás után kapott összegnek van jelölése, ezek szerint magának az N számnak szintén van jelö lése, amit bizonyítanunk kellett. A decimális számrendszer nem az egyetlen lehetséges helyértékes számrendszer. A p alapú helyértékes számrendszerben egymástól eltérő különböző p számjegyet használunk, és ezzel nullától p — 1-ig az egymásután következő egész számokat jelöljük. A többi számot a számjegyek sorozatával írjuk le, ahol az egész részt a tört résztől tizedesponttal választjuk el, és minden egyes számjegy értéke p-szer akkora, mint az előző helyen (bal oldali szomszédján) álló ugyanolyan számjegy értéke. Amennyiben az an, an_L, . . . , av a0, a_v a_2, . . . a_m betűk p alapú számrendszer számjegyeit jelölik, akkor a számjegyek következő sorozata:
a következő számot jelöli: 36
Általában valamennyi helyértékes számrendszer a két legkisebb számjegy (a nulla és egy számoknak megfelelő jegy) jelölésére a 0 és 1 jelet használja. Ekkor a rendszer alapját képező p számot a 10 számjegysorozat formájában írjuk le. A decimális számrendszerre vonatkozó előbb elmondott fejtegetések általános formában a p alapú számrendszernél is hasonló módon felhasznál hatók. 4.3. Az oktális helyértékes számrendszer. Ha a rendszer alapjául a nyolcas számot választjuk, az oktális számrendszert kapjuk. Ebben a számrendszerben valamennyi lehetséges szám leírására nyolc különböző jegyet: 0, 1, 2, 3, 4, 5, 6 , 7 használunk fel, amelyek nullától hétig az egymás után következő egész számokat jelölik. A nyolc számot már két jeggyel ,,10” for májában írjuk le. A többi számot számjegysorozat alakjában állítjuk elő. A kettőszáztizenöt számot, amelynek a decimális számrendszerben jelölése 215, oktális számrendszerben a következőképpen fogjuk írni: Számunkra a számok decimális írása a megszokottabb. Éppen ezért, amikor a kétszáztizenöt szám oktális ábrázolásának helyességéről akarunk meggyőződni, az utóbbi egyenlőség jobb oldalát decimális számrendszerbe írjuk át. A következőket kapjuk: A feladat megoldásra való előkészítésekor több elektronikus digitális gépnél a számokat oktális számrendszerben írjuk be. Az oktális számok összeadási táblázata (lásd 1. táblázat) volumenét illetőleg hasonló a decimális összeadási táblázathoz. A táblázat helyes haszná1. TÁBLÁZAT
Oktális összeadási táblázat
37
latát könnyen megtanulhatjuk a következő példából: a 4 és 6 számok összegé nek megtalálására a táblázat ama sorából indulunk ki, amelynek fejlécén a négyes számjegy áll, s azt a sorát keressük meg, ahol a bal oldali rekeszben a 6 számjegy áll. Az oszlop és a sor kereszteződésénél olvassuk le a 12 összeget (gondoljunk arra, hogy az oktális írásban a 12 a tíz számot jelöli). Ugyanez a táblázat, mint kivonási táblázat is használható. így pl. 11-ből 5-öt úgy vonunk ki, hogy először megkeressük a táblázatnak azt az átlóját, amelynek rovataiban a 11-es szám áll. Ezután a táblázatnak az 5-ös számmal kezdődő sora mentén megkeressük azt a rovatot, amely ezen sor és a megtalált átló kereszteződésénél van. A kereszteződés rovatán keresztülhaladó oszlop fejlécén olvassuk le a 4 különbséget. A táblázat segítségével az oktális számokat a decimális rendszer műve letei és végrehajtási szabályai szerint adjuk össze és vonjuk ki. 1. p é ld a
A szorzás oktális táblázatát a 2■ táblázat alakjában állíthatjuk elő. Két egyjegyű szám szorzatát a táblázat alapján ugyanolyan szabály szerint kapjuk meg, ahogyan az összeadási táblázat szerint az összeget megkaptuk. 2. TÁBLÁZAT O k tá lis s z o rz á s i tá b lá z a t
A szorzási táblázat segítségével a decimális számrendszerben használt szabályok szerint hajtjuk végre az oktális számok szorzását és osztását. 38
2. példa
Szorzás : X
Osztás :
173,261 16,35 1150565
336656,615 1635 15315
562023 1344046 174261 17^ bI____ 3366,56615
I 1635 173~261
14513 - „AO„ b02e 5327 ~~4~776 3472 13041 12656 1635 1635 0000
4.4. Bináris helyértékes számrendszer. A legkevesebb különböző szám jegyet a bináris számrendszer igényli — mindössze két számjegyet használ: 0 és 1 (a nulla és az egység egész számának megjelölésére). Eme rendszer alap ját — a kettőt — már két jeggyel írjuk le „ 10 ” . A háromtól hétig terjedő egész számokat a következő alakban állítjuk elő: 11 , 100 , 101, 110, 111. A kétszáz tizenöt szám a bináris rendszerben a következő alakú:
A kitevő fokszámát is bináris számrendszerben írtuk fel. A bináris alak helyességének ellenőrzésére az utóbbi egyenlőség jobb oldali részét írjuk fel a decimális rendszerben is. A következőt kapjuk:
A bináris számrendszer összeadási, kivonási és szorzási táblázata igen egyszerű. Minden táblázat összesen négy sorból áll (lásd 3., 4. és 5. táblázatokéit). E táblázatok segítségével bináris számok összeadása, kivonása, szorzása és osztása ugyanazon szabályok szerint megy végbe, mint amelyeket decimális számok összeadása, kívánása, szorzása és osztása során megszoktunk. 3. TÁBLÁZAT
B ináris össze adási tá b lá z a t
4.
TÁBLÁZAT
B ináris kiv o n ási tá b lá z a t
5.
TÁBLÁZAT
B in áris szor zási tá b lá z a t
39
3. példa
összeadás :
Szorzás :
1100111,011 + 10011,111 1111011,010
Osztás :
1100111,1101 X 11,001 11001111101 11001 111101
11011101101 I1001 1001 Ti000101 1001 1001
+ 1100111 1101
---------ГГГТ-
11001111 101
J QQI
1 0 1 0 1 1 1 1 0 ,0 1 0 1 1 1 1
-------j r + j -
K ivonás :
1001
ЮНО,1101
-QÖoo ”
10001,1111
-
uuuu
100,1110
4.5. Egyéb helyértékes számrendszerek. Ha a számrendszer alapja tíznél nagyobb, akkor az általánosan elfogadott (arabs) számjegyek a számok írására már nem elegendőek. Új számjegyeket kell bevezetni. Hexadecimális számrendszer esetén például ezt a következőképpen tehetjük meg: 0 — nulla
4 — négy
8 — nyolc
1 - egy
5 — öt 6 — hat
9 — kilenc 0 — tíz
7 — hét
1 — tizenegy
2 — k ettő 3 — három
2 — tizenkettő 3 — tizenhárom 4 — tizennégy 6 — tizenöt
Az oktális és bináris számrendszerben már felírt kettőszáztizenötös szám hexadecimális rendszerben a következő alakot ölti: 37 = 3 • 10*12345678910+ 7 • 10°. 6.
TÁBLÁZAT
A számok írásmódja különböző helyértékes számrendszerekben Tízes (decimális) számrendszer
H árm as I számrendszer
1 Ötös szám| rendszer j J
0 1
I
I
2
10
3
11
I
100
I
0 1 4
i |
I j
5 6
7 8 9 10 11 12 13 14 15 16 17 18 19 20
40
K ettes (bináris)
I számrendszer |
I
I I I
1
0
1
0
1
Tizenhatos (hexadecimális) számrendszer
(oktális)
számrendszer
I
0
0 1
2
2
2
2
10
3
2
3
11
4
4
4
101
12
10
5
5
110
20
11
6
6
111 1000 1001 1010 1011 1100 1011 1110 1111 10000 10001
21 22 100 101 102 110 111 112 120 121 122
12 13 14 20 21 22 23 24 30 31 32
7 10 11 12 13 14 15 16 17 20 21
7 8 9 Ö T 2 3 4 5 10 11
10010 10011 10100
200 201 202
33 34 40
22 23 24
I
.
12 13 14
Az írásmód helyességének ellenőrzésére írjuk át az utóbbi egyenlőség jobb oldalát a számunkra megszokott decimális rendszerbe: A 6 . tablazat az első huszonegy egesz szám írásmódját tünteti fel külön böző számrendszerekben. 5. Számok átírása egyik helyértékes számrendszerből a másikba 5.1. Az egész számok átírása. Legyen az N egész száma p alapú számrendszerben adott. Legyen q a másik számrendszer alapszáma a p alapú ki induló számrendszerben leírva. Tételezzük fel, hogy az N szám q alapú számrendszerben előállított alak ját megállapítottuk, és alakja a következő: ahol ak, a,k_v . . ., a0 a g alapú rendszer számjegyei és 10 eme rendszer alap száma, vagyis q. Helyettesítsük az (1.2) egyenlőség jobb oldalán az ak, ak_v . . ., a0 és 10 számok helyébe azok p alapú számrendszerben felírt a% af_v . . af; és q elő állítását. Eredményünk a következő:
Az (I. 3) egyenlőség mindkét oldalát osszuk el g-val:
ahol
valódi törtet képvisel,
Az (I. 4) egyenlőségből látható, hogy ha az a maradék a0, míg a hányados:
N
számot g-val osztjuk,
Ha már most az N x hányadost g-val osztjuk, aí maradékot kapunk, az új hányados pedig: Ha ezt az eljárást k-szór végezzük el, sorban valamennyi a%, a*, ..., a*-x, számot megkapjuk, amikor is az utolsó hányados alakja a következő: Az N számnak és hányadosainak g-val való egymásutáni osztása útján a q alapú számrendszerben felírt szám osztási maradékainak formájában az N szám felírásához szükséges q alapú számjegyeket (a legkisebb értéktől kezdve) rendre megkapjuk. Az egymásutáni osztást mindaddig folytatjuk, míg a há nyados g-nál nem kisebb. Ez az utolsó hányados adja meg az N szám q alapú 41
számrendszerben felírt legnagyobb számjegyét. Az osztást a kiinduló számrendszerben végezzük el. A számok egyik számrendszerből a másikba való átírásának számítását példákon szemléltethetjük. 1. példa. L egyen ad v a 191 decim ális szám . ír ju k á t b in áris s z á m r e n d s z e r b e . 1) 191 18 ----11 10
I2 ----95 8 ----
I2 ----47 4
i2 ---23
—
15
-----
2
14
1
1
—
1
6
“Г
|2 ----
|2
11
—
10
3
---
_2
1
1
5
i2
---
2
4
—
1
II 0
1
A 191 decim ális szám b ináris alak ja: 10111111. 2. példa. ír ju k á t ugyanezt a 191 szám ot o k tális szám rendszerbe. 191 I 8 16 ------- - 2 3 31 16 24 -------7 7
I 8 —’ 2
A 191 decim ális szám o ktális alak ja: 277. 3. példa. ír ju k á t u g yanezt a 191-es szám ot hexadecim ális szám rendszerbe. 191 16
----
I 16 ----11
31 16 15 A hexadecim ális szám rendszer 11-es szám ának jelölésére az 1, m íg a 15 szám jelölésére az 5 szám jegyet v ez ettü k be. Ily m ódon a százkilencvenegy szám hexadecim ális alak ja : 15.
5.2. Törtek átírása. Legyen most D a p alapú számrendszer valódi törtje. Tételezzük fel, hogy a szám q alapú alakját megtaláltuk: D = a_x К Г 1 + a_2 lO“ 2 + a _ 3 1СГ3 + • • •,
(1-5)
ahol a_v a_2, a_z, . . . a, q alapú számrendszerben felírt számjegyek és 10 a számrendszer alapja, vagyis q. Az (1.5) egyenlőség jobb oldalán helyettesítsük az a_1( a_2, a_3, . . . és 10 számokat a p alapú számrendszerbeli alakjának megfelelő a*1; a*2, «*3, . . . és a q számmal. Eredményünk: D = a*x q -1 + a _2 q~2 + a% q~ 3 + . . . .
(1.6)
0 I t t és a to v áb b i p éldákban az osztás m űvelete az eljárás b em u tatása céljából részletezve van. A függőleges vonal az osztás m űveleti jele, a h án y ad o so k at és a m a ra d ék képzés m űveleteit a vízszintes vonalak a la tt találju k . (Szerkesztő) 42
Szorozzuk be az (I. 6 ) egyenlőség mindkét oldalát q-val: Dq = a*x + a í 2 q -1 + q*3
+ ••• •
(I- 7)
Az (I. 7) szám egész része a*v tört része pedig A =
+«*3
X + у =
1,1011010 ->
W ííkomp = 00,1110111----------komp =
0 0 ,1 1 0 0 0 1 1 ----------------------
[ж -f- 2/]^ komp = n em létezik
0 0 ,1 1 1 0 1 1 1 ------------------------------------------- ---------------
©’
00,1100011 ------------------------------------------------------------
[ * ] f „ k o m p © 'Ü / ] f t komp = 0 1 , 1 0 1 1 0 1 0 -------
Az a d o tt esetben az összegező n y om rácsának tú lcso rd u lása ab b a n m u ta tk o z ik meg, hogy a kim enetén olyan ered m én y t k ap u n k , am ely nem leh et egyetlen egy szám n a k sem m ó d o síto tt 10 kom plem ens kódja. 69
13. példa. X
= -0,1110111 -►
у = -0,1100011 X
[a;]M komp = 11,0001001-------[y]M komp = 11,0011101--------; ----
+ У — —1,1011010 ->• [х + уУ* котр = nem létezik 11,0001001 --------------------------------- ----------------
©'
11,0011101------1 1 0 ,0 1 0 0 1 1 0
[ * ] f t komp e ' [3/1Й komp =
1 0 ,0 1 0 0 1 1 0 ----------------------------------------
M in t e lő b b , a k a p o tt e r e d m é n y i t t s e m le h e t s e m m ily e n s z á m n a k m ó d o s íto tt 10 k o m p le m e n s k ó d ja . A z e lő b b i p é ld á k a t v iz s g á lv a le r ö g z íth e tjü k , h o g y m ó d o s íto tt 1 0 k o m p le m e n s k ó d e s e té b e n a z e ls ő je g y r ő l á t v i t e l t n e m a lk a lm a z ó ö s s z e g e z ő v e i v é g r e h a jto tt ö s s z e a d á s a lk a lm á v a l a n y o m rá c s tú lc s o rd u lá s á n a k a z is m é rv e a z , h o g y a z összegező kimenetén kapott szám első két nyomában a számjegyek nem azonosak. A s z á m o k a t m ó d o s íto tt 1 0 k o m p le m e n s k ó d b a n tá r o ló g é p n é l a n y o m r á c s tú lc s o r d u lá s á n a k é s z le lé s é re o ly a n k é s z ü lé k e t k e ll a lk a lm a z n i, a m e ly a z ö s s z e g e z ő k i m e n e té n k a p o t t e ls ő k é t s z á m je g y e t ö s s z e h a s o n lítja . H a e z e k a s z á m je g y e k n e m a z o n o s a k , a k é s z ü lé k n e k a v e z é rlő b e re n d e z é s re je le t (im p u l z u s t) k e ll a d n ia . Ö s s z e a d á s k o r, h a a s z á m o k a s z o k á s o s 10 k o m p le m e n s k ó d b a n v a n n a k m e g a d v a , a tú lc s o r d u lá s e lle n ő rz é s e b o n y o lu lta b b , m e r t a z e lle n ő rz ő b e r e n d e z é s n e k k é t ö s s z e h a s o n lítá s t k e ll le f o ly ta tn ia é s n e m e g y e t, m in t a m ó d o s íto tt 1 0 k o m p le m e n s k ó d a lk a lm a z á s á n á l. Módosított 10 komplemens kódban a számok kivonása megfelelő össze függéssel az összeadásra van visszavezetve: e b b e n a z e s e tb e n
9. Algebrai összeadás 9 kom plem ens kódban 9.1. 9 kom plem ens kód. V i z s g á l j u k m e g a c i k l i k u s á t v i t e l t a l k a l m a z ó ö s s z e g e z ő f e lh a s z n á lá s á t t ö r t s z á m o k o n e lv é g z e tt a r itm e tik a i m ű v e le te k v é g re h a jtá s á ra . E z e k e t a s z á m o k a t v a l a m i l v e n k ó d b a n e l ő k e l l állítanunk, h o g y a z
f e lté te le k e t k ie lé g ítő x é s у s z á m o k o n a c ik lik u s á tv ite lt ta r ta lm a z ó ö s s z e g e z ő b e n a z a lg e b r a i ö s s z e a d á s t e lv é g e z z ü k . 70
M a r a d ju n k e g y e lő re a n n á l a z e s e tn é l, a m ik o r a tiz e d e s p o n t a z ö s s z e g e z ő e l s ő s z á m j e g y e u t á n v a n r ö g z í t v e , v a g y i s a m i k o r a z ö s s z e g e z ő a [+1 m ű v e l e t e t h a jtja v é g re . A k e r e s e tt k ó d o t / ( ) s z im b ó lu m m a l je lö lv e a z a k ö v e te lm é n y , h o g y a k ö v e tk e z ő f e lté te ln e k te g y e n e le g e t: (I. 55) M á s s z ó v a l a z t k ív á n ju k , h o g y a k é t s z á m k ó d ja in а Щ m ű v e le t e lv é g z é s e k o r a k é t s z á m ö s s z e g é n e k k ó d já t k a p ju k . E z e n k ív ü l a k ó d a k ö v e tk e z ő f e l té te ln e k is f e le lje n m e g : (I. 56) mert enélkül a kódokon a j+j művelet nem volna mindig végrehajtható. Könnyen meggyőződhetünk arról, hogy mindkét feltételt kielégíti következő összefüggésekkel meghatározott kód: (I. 57) A 10 komplemens kód esetéhez hasonló meggondolásokkal könnyen meggyő ződhetünk arról, hogy ez a kód az (I. 56) feltételt kielégíti. Feltételezzük, hogy az olvasó ezt maga végzi el. Megjegyezzük, hogy a nulla számára két lehetséges kódérték van (I. 57 ) (I. 58) Az értékek közül az elsőt az (I. 57) összefüggés felső sorából, a másodikat az alsó sorból kaptuk. Az első szokásos elnevezése a pozitív nulla kódja, a má sodiké a negatív nulla kódja. Ismét hangsúlyozzuk, hogy mindkettő a nulla kódja. Annak kimutatására, hogy az általunk választott kód az (I. 55) feltételt kielégíti, több esetet kell megvizsgálnunk, mint azt a 10 komplemens kód tanulmányozásánál tettük. Külön vizsgálat szükséges a következő esetekben: 1 . ha mindkét összeadandó nulla; 2 . ha az összeadandók nullától különböznek, összegük viszont nulla;
3. ha az egyik összeadandó nulla. Ezenkívül négy alapvető esetet kell megvizsgálnunk: 4. ha mindkét összeadandó pozitív; 5. ha az összeadandók előjelei különbözőek, az összeg pozitív; 6 . ha az összeadandók előjelei különbözőek, összegük negatív; 7. ha mindkét összeadandó negatív. Vizsgáljuk valamennyi esetet egyenként. 1. Mindkét összeadandó nulla: x = 0, у = 0 . Közvetlenül láthatjuk hogy (I. 59) Kimutatjuk, hogy (I. 60) 71
V a ló b a n :
/ ( - о ) Ш Л - О ) = u i ... и щ 1Д1. • • п.
(1.61)
Minthogy 1,11 . . . 11 + 1,11 . . . 11 = 11,11 . . . 10 > 10, az (I. 24) összefüggés szerint: 1,11
...
11 Щ 1,11
...
11
=
1,11
...
11
+
1,11
...
11
—
10
+
0,00
= 1,11 . . . 11
...
01
=
(1.62)
Az (I. 61), (I. 62) és (I. 58) második összefüggéséből: amit igazolnunk kellett. Ha összefoglaljuk a kapott eredményeket, láthatjuk, hogy azaz a vizsgált esetben 2. A két ö sszeadan dó ab szo lú t értékre nézve a zo n o s, elő jelü k ellen tétes. A z e g y i k ö s s z e a d a n d ó t ж - s z e l (x > 0 ) , a m á s i k a t — ж - s z e l j e l ö l j ü k . I g a z o l j u k , hogy (1.63) Valóban, minthogy ж > 0 , következésképpen függés szerint
—x
< 0, az (1.57) össze (1.64)
Mivel x -f- (10 — x — 10 ") = 10 — 10 n < 10, az (1.24) összefüggés segít ségével ezt kapjuk:
amit bizonyítanunk kellett. 3 . A z e g y ik ö sszea d a n d ó n u lla , a m á s ik a n u llá tó l eltérő. Határozottság kedvéért tételezzük fel, hogy x ф 0 és у — 0 . Ebben az esetben az (1.57) értel mében 0 ,0 0 . . . 0 < f ( x ) < 1 ,1 1 . . . 1 . ( 1 . 66 ) Mutassuk be azt, hogy (1.67) Az (1.65) összefüggés nyilvánvaló, ha /(0) = 0,00 . . . 0 . Annak érdeké ben, hogy f ( 0 ) — 1,11 . . . 1 esetére is igazoljuk az összefüggést, elegendő az 72
(1.66 ) értelmében kimutatnunk, hogy (
1 . 68 )
esetén érvényes az összefüggés. Megjegyezzük, hogy az
feltétel — amelyet az (1 .68 ) feltétel is tartalmazott — annyit jelent, hogy a ]> 0,00 . . . 01 , minthogy minden 0,00 . . . 01 -nél kisebb pozitív számra nézve a = f(x), a gépi nullának felel meg, vagyis az összegező bemenetére nulla for májában adjuk a számot. Ezért
Következésképpen az (1.24) összefüggés szerint: amit bizonyítanunk kellett. Most még a négy alapvető eset vizsgálata marad hátra, melyhez hozzá kezdve előzőleg az (I. 57) összefüggéshez térünk vissza. Ezek szerint: (1.69) 4. Mindkét összeadandó pozitív, vagyis (1.70) Az (1.70) első két egyenlőtlensége és az (1.57) összefüggés értelmében f(x) — x; f (y) = y, következésképpen (1.71) Az (1.70) harmadik egyenlőtlenségéből és az (1.24) képletből ezt kapjuk: (1.72) Az (1.70) harmadik egyenlőtlenségéből és az (1.69) összefüggésből: (1.73) Az (1.71), (1.72) és az (1.73) összefüggéseket összevetve:
73
5. Az egyik összeadandó pozitív, a másik negatív, az összeg pozitív. H atá rozottság kedvéért tegyük fel, hogy: (1.74) Ha figyelembe vesszük az (1.74) első két egyenlőtlenségét és felhasznál juk az (1.57) összefüggést, akkor Következésképpen (1.75) Minthogy X -f- (10 -f у — 10 ") = 10 -f- (x + У) — 10 n ]> 10, az (1.24) öszszefüggés szerint: Az (1.74) harmadik egyenlőtlensége és az (1.69) képlet alapján: (1.77) Az (1.75), (1.76) és az (1.77) összefüggéseket összevetve: 6 . Az egyik összeadandó pozitív, a másik negatív, az összeg negatív. A hatá rozottság kedvéért például tegyük fel, hogy:
(1.78) Mint az előbbi esetben: (1.79) Most azonban: minthogy
X -\-y
1 0 , az (1.24) képlet szerint (ío + x — io - ”) a (10 + y ~ io-") = = (10 + ж + 10-") + (10 + у - 10-") - 10 + 10- x = = 10 + (x +y ) - 10-".
(1.84)
Az (1.82) harmadik egyenlőtlensége és az (1.69) összefüggés szerint: Ha az (1.83), (1.84) és (1.85) összefüggéseket összesítjük: így bebizonyítottuk, hogy az általunk választott kód (1.57) eleget tesz az (1.55) feltételnek. Ezt a kódot 9 komplemens kódnak^ nevezzük. Elfogadott jelölése a [ ]« komp szimbólum. Az új jelöléssel az (1.57) képletet átírva: (
1 . 86 )
(10 kettőt jelöl; n az x szám tört része jegyeinek mennyiségét jelöli). Például [0,110111001]9 komp = 0,110111001;
[ —0 , 110111001]9komp = 10 — io - 1001 + (—0 , 110111001) = =
10
—
0,000000001
—
0,110111001
=
= 1,111111111 - 0,110111001 = 1,001000110.4 4' A kom plem ens szám előző értelm ezése alap já n a decim ális 64 szám 9 kom plem ense például: 99 — 64 = 35 E g y szám 9-es kom plem ensét (röviden: 9 kom plem ensét) a decim ális és bináris szám rendszerben eg y a rán t á ltaláb a n 9 kom plem ensnek nevezik. B in áris szám rendszer b en 1 lcomplemensnek. is nevezik.
A 9 komplemens kód megfelelői a fenti értelemben oroszul, németül és angolul: Обратный код D er inverse Code l ’s com plem ent code (decim álisán 9’s com plem ent code). (Szerkesztő)
75
Ily módon a pozitív x számokra vonatkozóan a szám egyenes, 10 kom plemens és 9 komplemens kódja azonos. Negatív ж-екге vonatkozóan ezek a kódok különbözőek. Ha az utóbbi példát figyelemesen megvizsgáljuk láthat juk, hogy valamilyen negatív bináris szám 9 komplemens kódját a következő képpen kapjuk: a szám előjelét elhagyjuk; a kód egész részének helyébe 1-et teszünk; a szám tört részében valamennyi nullát egységre, és valamennyi egy séget nullára cseréljük ki, vagyis ha x = —0 , xx x2 . . . x n, ahol xv x2, . . . x n bináris számjegyek, amelyek mindegyike vagy nulla vagy egység, akkor: (1.87) Bemutatjuk, hogy az egyetlen példa vizsgálata kapcsán általunk össze állított (1.87) képlet általánosan igaz, vagyis egyenértékű (negatív ж-екге vonatkozóan) az (1.86) összefüggéssel. Ennek érdekében az (1.87) összefüggés alapján kapott [x]9 komp-ból vonjunk le ж-et. Ha számításba vesszük, hogy -j- ж,- = 1, akkor:
Az utóbbi eredményből ha x < 0 , akkor: amit igazolnunk kellett (lásd az (1 .86 ) képletet). Pozitív szám ábrázolásakor a 9 komplemens kód első számjegye nulla, negatív szám ábrázolásakor egység. Éppen ezért a 9 komplemens kód első nyomát általában előjel-nyomnak, nevezzük. Tisztázzuk most az előbbiekben vizsgált esetek alapján a valódi 9 kom plemens kód formájában előállított bináris törtek ciklikus átvitelt tartalmazó összegező segítségével való összeadását példákkal. 1. példa.* X =
0 ,1 0 0 1 0 0 1
у =
-0 ,1 0 0 1 0 0 1 -
X+ у =
[ж ], komp =
0 , 1 0 0 1 0 0 1 ----------
[ y \ komp = 1,0110110-----------------
0,0000000 ->[ - 0 ] 8 komp = 1,1111111
s [ x le komp d J I k k komp —
-*
0,1001001
-—
1,0110110
*------------------------------------------- -------------------------------------------------------------------------
-----------------------------------------------------------
1 ,1 1 1 1 1 1 1
* E b b en és a következő p éldákban a b al oldali oszlopban az összeadandók és összegük bináris szám rendszerben felírt alak ja, a jobb oldali oszlopban ezen szám ok 9 kom plem ens k ó d ja áll. L e n t az összegezőnek a kódokkal v é g re h a jto tt és az összeg k ó d já t eredm ényező m űvelete v a n feltü n tetv e. H a a ciklikus á tv ite l (az összegező első szám jegyéből a legutolsóba) m eg tö rtén ik , le n t a vonal a la tt az összeadandók k ódjainak összegét tü n te ttü k fel, és az a la ttu k elhelye z e tt nyíllal ábrázoljuk a ciklikus á tv ite lt. E m e n y íl a la tt szerepel az összegnek az össze gező á lta l k ia d o tt kódja. 76
2. példa. X =
0,0010001 -+
у =
0,1000111
x + y=
0,1011000
[ж], komp = 0,0010001 ---------[у]g komp = 0,1000111 ------------------[x + y \ komp = 0,1011000
0 ,0 0 1 0 0 0 1
*-------- ----------------------------- --------------------
0 ,1 0 0 0 1 1 1
— — ----------------------------------------------------------------
l+ l
M s komp S [«/]„ komp =
0,1011000 ------------------------------
3. példa. x=
0 ,1 1 0 0 0 1 1
[ж ]9 kon,P =
У = -0 ,0 0 1 0 0 1 1 -* x + y=
0 ,1 1 0 0 0 1 1 -------------
[ ] f komp = 00,0011110-------- [2/^komp = 11,0001111—
—0,1010010 — [X + y ]Mkomp = 11,0101101
00,0011110 -------------------
ЕЕГ 11,0001111 l « V komp Ш ' М Р komp =
*-------------------
1 1 ,0 1 0 1 1 0 1 -
13. példa. X=
-0,1110001-
[*]J* komp = 11,0001110-------- -
У=
-0,0000111—
[y]M komp = 11,1111000---------
x + y = - 0 ,1 1 1 1 0 0 0 1 1 ,0 0 0 1 1 1 0
Ш'
[X + y ] M komp =
T
11,0000111
1, a ciklikus átvitelt tartalmazó összegező nyomrácsa túl csordul. A túlcsordulás csakis abban az esetben következhet be, amikor az x és az у összeadandók azonos előjelűek. Ennek megvilágítására két példát hozunk fel: 14. példa. Mindkét összetevő pozitív. x = 0,1110111 —
2/= 0,1100011 x + у —
[x]M komp = 00,1110111--------[y]Mkomp = 00,1100011----------------
1,1011010 — [x -f y]M komp — nem létezik 00,1110111 ------------------------------ 1--------------
l±f M S* komp S '
00,1100011 *----------------------------------------------------
komp = 01,1011010 -------------------------------------
15. példa. Amennyiben a számok negatívok, akkor a nyomrács túlcsordulása a következőképpen történik: x = -0 ,1 1 1 0 1 1 1 —
[x]M komp = 11,0001000--------- -
у = -0,1100011 -
[ПМкотр = 11.0011100------- 1—
X + у = —1,1011010 — \x + y~\M komp — nem létezik
FT
11,0001000 ------------------------------ --------------- ! 11,0011100 «---------------------------------------------------110,010010°
I_______ T [*]í* komp Е Г
6 Kitov—Krinyickij
ÍV W
komp =
1 0 ,0 1 0 0 1 0 1 -------------------------------------
81
A nyomrács túlcsordulásának ellenőrzése a módosított 9 komplemens kódban felírt számok összeadásakor (ciklikus átvitelt tartalmazó összegező segítségével) semmiben sem különbözik a módosított 10 komplemens számok összegezésekor végzett ellenőrzéssel átvitelt nem tartalmazó összegezővei vég zett művelet esetén. A módosított 9 komplemens kódban a számok kivonása a kisebbítendő és a negatív előjellel vett kivonandó kódjainak összeadására van visszavezetve. Az összegező kimenetén kapott eredmény a különbség módosított 9 komple mens kódja. 10. Normalizált számok összeadása és kivonása. Szorzás és osztás fixpontos és lebenőpontos gépekkel 10.1. Számok összeadása és kivonása lebegőpontos gépekkel. Számok összeadása és kivonása az első számjegy után rögzített tizedespontú gépekben (a gép szerkezetétől függően) 10 komplemens és 9 komplemens, illetve módosí tott 10 komplemens és módosított 9 komplemens kóddal történik, amint azt az előző szakaszokban leírtuk. Most azzal foglalkozunk, hogyan kell a számokat összeadni (kivonni) lebegőpontos gépekkel. Ezekben a gépekben a számok mantisszáját valamilyen módosított kód dal tároljuk. A határozottság kedvéért módosított 9 komplemens kódot vizs gálunk. Az összeadás művelete a következőképpen történik: Először az össze adandók nagyságrendjét egyenlítjük ki, vagyis a kisebb nagyságrendű összeadandót oly módon denormalizáljuk, hogy nagyságrendje a második össze adandó nagyságrendjével azonossá váljék. Ezután a két összeadandó mantiszszáit módosított 9 komplemens kódba írjuk át, és a ciklikus átvitelt tartalmazó összegezőbe adagoljuk. Ekkor három eset lehetséges: 1. Az összeadás a nyomrács túlcsordulása és a normalizáltság megszűnése nélkül történik. Ebben az esetben az eredményt a módosított 9 komplemens kódból egyenes kódba írjuk át. Az eredményt mantissza formájában a meg felelő rekeszbe visszük át. Az eredmény nagyságrendje a két összeadandó közös nagyságrendje. 2. Az összeadás az összegező nyomrácsának túlcsordulása nélkül megy végbe, de az eredmény egyenes kódba való átírás után nem lesz normalizált. Ez a normalizálás ún. jobbról való megszűnése. A rekeszbe írás előtt az eredményt normalizáljuk. 3. Az összeadás során az összegező nyomrácsa túlcsordul. Amennyiben az összeadandók pozitív számok, az összegező nulladik és első nyomában a ki meneten a 01 számkombináció áll, amennyiben az összeadandók negatívok, a számkombináció 10 (lásd a 9. szakaszt). A nyomrácsnak ez a túlcsordulása a normalizáltság ún. balról való megszűnése. Könnyen megérthetjük, hogy nem következett volna be túlcsordulás, ha a mantisszáknak módosított 9 komple mens kódba való átírása előtt mindkét mantisszát 10~1(vagyis 1/2) értékkel meg szoroztuk és mindkét nagyságrendet egységgel megnöveltük volna. Arra azon ban nincs szükség, hogy a géppel az egész műveletet újból elvégeztessük, mint hogy az összegező kimenetének nulladik nyomában megkapjuk az összeg elő jelére jellemző számjegyet, az összegező kimenetének első nyomában pedig az 82
összeg első számjegye áll. Elegendő, ha a nulladik nyom érintetlenül hagyásá val valamennyi kapott számjegyet egy nyommal jobbra eltoljuk és a nulladik nyomban kapott számjegyet beírjuk az első nyomba. A most kapott eredményt módosított 9 komplemens kódból egyenes kódba írjuk át és mint mantisszát visszük át a megfelelő rekeszbe. Az összeg nagyságrendje egységgel nagyobb, mint a két összeadandóé. Világítsuk meg ezt példákkal. Valam ennyi alakot bináris szám rendszer ben írjuk fel. 1. példa. Az összeadás során nem szűnik meg a norm alizáltság. Az első összetevő a rekeszbe a következőképpen van beírva: (I)
0 11000011
0 0100.
0 10001011
0 0001.
A m ásodik összetevő: (II)
Első lépés. A m ásodik összetevőt denorm alizáljuk, hogy n agyságrendje 100 érték ű legyen (a nagyságrendek kiegyenlítése): (II)
0 00010001
0 0100
M ásodik lépés. M indkét m antissza á tírá sa a m ó d o síto tt 9 kom plem ens k ó d b a: (I)
00 11000011,
(П )
00 00010001.
H arm adik lépés. A m an tisszák összeadása: (I) (II)
_
00 11000011
RT
00 00010001 00 11010100
Negyedik lépés. Az eredm ény á tírá sa egyenes kódba:
0 11010100. az eredm ény beírása a megfelelő rekeszbe: 0 11010100 0 0100. 2. példa. Az összeadás során a n orm alizáltság jo bbról m egszűnik. Az első összetevő a rekeszben a következőképpen v an b eírva: (I)
0 11000001 0 0011,
vagyis az első összetevő a következő szám: + 0,1100000 • 1 0 +11. A m ásodik összetevő a következő m ódon van b eírv a a rekeszbe: (II)
1 10000110 0 0110.
a m ásodik összetevő te h á t a következő szám : —0,10000110 • 1 0 +110: E lső lépés. Az első összetevő denorm alizálása, hogy a n agyságrendje 110 érté k ű legyen (a nagyságrendek kiegyenlítése): (I)
0 00011000 0 0110.
M ásodik lépés. M indkét m antissza á tírá sa a m ó d o síto tt 9 kom plem ens kódba:
6*
(I)
00 00011000;
(II)
11 01111001. 83
H arm adik lépés. A m antisszák összeadása (I)
00 00011000
l±f
11 01111001 11 10010001
Negyedik lépés. Az eredm ény á tírá sa egyenes kódba:
1 01101110. Ötödik lépés. Az eredm ény norm alizálása: 1
11011100,
vagyis a nagyságrend 110 h e ly e tt 101 le tt. H atodik lépés. Az eredm ény beírása a megfelelő rekeszbe: 1 11011100 0 0101. Végső fokon a következő szám ot k ap tu k : — 0,110 11100 • 1 0 +101=
3.
- 11011 , 1.
példa. Az összeadás során a norm alizáltság b al oldalról m egszűnik.
Az első összetevő: (I) A m ásodik összetevő: (II)
1 11100111 0 1000. 1 10100000 0 0111.
Első lépés. A m ásodik összetevő denorm alizálása, hogy nagyságrendje 1000 érté k ű legyen (a nagyságrendek kiegyenlítése): (II)
1 01010000 0 1000
M ásodik lépés. A m antisszák á tírá sa m ó d o síto tt 9 kom plem ens kódba: (I)
11 00011000,
(II)
11 10101111.
H arm adik lépés. A m antisszák összeadása: (I) (II)
11 00011000
ЕЕГ
11 1010111110 110 11000111
I_ _ _ _ _ _ _ _ _ í 10 11001000
Negyedik lépés. A bal oldali denorm alizálás helyesbítése: I I 01100100 .
Ötödik
lépés. Á tírás egyenes kódba: 1 10011011 .
H atodik lépés. Az eredm ény beírása a megfelelő rekeszbe: 1 10011011 0 1001. 84
10.2. A számok szorzása és osztása a gépekkel. A számok szorzása mind a lebegőpontos, mind az első számjegy után rögzített tizedespontos gépek nél egyenes kódban történik. E lő s z ö r is a n u lla d ik n y o m t a r t a l m á t (a s z á m e lő je lé t) e g y e le m e s ö s s z e g e z ő b e n a d ju k ö ssz e . A m e n n y ib e n e n n é l a m ű v e le tn é l lé p fe l tú lc s o rd u lá s , e z e l v e s z . A s z o rz á s e r e d m é n y é h e z a z a lg e b r a is m e r t s z a b á ly a in a k m e g fe le lő e n h o z z á í r j u k a z e l ő j e l e t ( l á s d a 8. tá b lá za to t). 8. TÁBLÁZAT
A szorzat előjelének értéke A nulladik nyomok összeadása
0+ 0= 0+ 1= 1+0 = 1+ 1=
0 1 1 10 ~ 0
Előjelszabály szorzás esetében
+ ._|_ = + + •- = -----(- = _._= +
E z u tá n tö rté n ik m e g m a g u k n a k a s z á m o k n a k ö ssz e sz o rz á sa . F ix p o n to s g é p e k b e n a s z á m o k n a k , le b e g ő p o n to s g é p e k b e n p e d ig a m a n tis s z á k n a k ö ssz e s z o rz á s a a z o n o s a n tö rté n ik . B in á ris s z á m re n d s z e rb e n (és e g y e n e s k ó d b a n ) a s z á m o k á b rá z o lá s a c s a k k é t je g g y e l, n u llá v a l é s a z e g y s é g g e l tö r té n ik . É p p e n e z é r t a s z o rz á s ig e n e g y s z e r ű v é v á lik . A z e ls ő té n y e z ő t c s a k is n u llá v a l v a g y e g y s é g g e l — a m á s o d o k té n y e z ő s z á m je g y e iv e l — k e ll m e g s z o ro z n u n k . A k a p o tt r é s z le ts z o rz a to k a t — m in d e n ú j s z o r z a te r e d m é n y t e g y n y o m m a l j o b b r a to lv a — e g y m á s a lá k e ll írn u n k . A n u llá v a l a z o n o s r é s z le ts z o rz a to k a t te rm é s z e te s e n e lh a g y h a tju k . E n n e k k ö v e tk e z té b e n a g é p b e n a s z o rz á s t a z e g y ik té n y e z ő n e k a m á s o d ik té n y e z ő s z á m je g y e i á lta l m e g h a tá ro z o tt n y o m s z á m m a l v a ló e g y m á s u tá n i e lto lá s a és a k a p o tt e re d m é n y e k e g y m á s k ö z ö tti ö s s z e a d á s a ú tjá n le h e t m e g v a ló s íta n i. B iz o n y o s g é p e k n é l a z e ls ő t é n y e z ő s z o r z á s á t n e m a m á s o d ik té n y e z ő le g u to ls ó , h a n e m le g e ls ő n y o m á n k e z d ik , é s a m á s o d ik té n y e z ő n y o m r ó l n y o m r a v a ló v é g ig fu tá s a b a lr ó l jo b b r a k ö v e tk e z ik b e . M in th o g y a s z o k á s o s s z o rz á s á lta lá n o s a n is m e r e te s , a r r a s z o r ítk o z u n k , h o g y a z e ls ő té n y e z ő n e k a m á s o d ik té n y e z ő e ls ő n y o m á v a l k e z d ő d ő s z o r z á s á r a m u t a t u n k b e p é ld á t. 4. példa.
0 , 11001101
0, 11101001 x 01100110 00110011 + 00011001 00000110 00000000
0, K erekítés:
1 — első eltolás eredm énye 01 —- m ásodik eltolás eredm énye stb. 101 01101 11001101
10111010
10010101
0, 10111011
E z e n k ív ü l a le b e g ő p o n to s g é p e k b e n m e g tö r té n ik a té n y e z ő k n a g y s á g r e n d jé n e k a lg e b r a i ö s s z e a d á s a is , e z a d ja a s z o r z a t n a g y s á g r e n d jé t. H a a s z o rz á s 85
után a lebegőpontos gép rekeszében az eredményt nem normalizált alakban kapjuk, akkor azt (a kerekítés erejéig) normalizálásnak vetjük alá. Az osztás alkalmával a hányados előjelét az osztó és az osztandó előjelét ábrázoló számoknak egyetemes összegezőben történő összeadásával kapjuk meg épp úgy, mint a szorzásnál. Fixpontos gépekben a számok osztása és lebegőpontos gépekben a man tisszák osztása azonosan történik. Az osztás úgy történik, hogy az osztót az osztandóból kivonjuk, majd a kapott maradékot balra mozgatjuk, majd az osztót (az eltolás eredményéből) újból kivonjuk stb. Ily módon a gépben a számok osztása ugyanúgy történik, mintha azt a bináris rendszerben ceruzával papíron elvégeznők (lásd a 4§. osztási példáját). Az alkalmazott kód az egyenes kód. Ezenkívül a lebegőpontos gépekben az osztandó nagyságrendjéből az osztó nagyságrendjének kivonását is elvégezzük. Ez adja a hányados nagyság rendjét. Amennyiben a lebegőpontos gép rekeszében a hányados nem normali zált alakban szerepel, annak normalizálása is megtörténik. Sok gépben az a : b osztási műveletet két művelettel helyettesítjük: — • a. E z e k b e n a g é p e k b e n a b m e n n y is é g e a l a p já n a z 1/b é r t é k e t v a la m ily e n b
számítási módszerrel, különleges szabványos rutinprogram segítségével számít juk ki. Ezzel a gép aritmetikai egysége szerkezetének egyszerűsítését érjük el. Az a : b hányadost most már úgy kapjuk meg, hogy az — számot az amennyib séggel szorozzuk.
86
II.
F E JE Z E T
A M ATEM ATIKAI LOGIKA É S A Z E L E K T R O N IK U S DIGITÁLIS GÉPEK Á R A M K Ö R E IN E K SZ E R K E SZ T É SE
11. Bevezetés a logikai algebrába 11.1. Az ítélet fogalma és annak logikai értéke. A logika a gondolkozás formáinak és szabályainak tudománya. A matematikai logika az általános logika egyik, a matematika követelményeinek megfelelően kifejlődött ága. A matematikai logika elnevezését nemcsak az indokolja, hogy ez a tudomány a matematikai követelményekből fejlődött ki. A matematikai logika ugyanis úgy épül fel, mint tipikusan matematikai tudományág, és nemcsak a matema tika logikájának, hanem a logika matematikájának is tekintjük. Bizonyos mér tékben a matematikai logika a matematikai módszerek formális logikai problé mákra való alkalmazásának eredménye. A matematikai logikában ugyanazt a formanyelvet használjuk, amelyet a matematikában régóta alkalmaznak. Ez megszabadítja a matematikai logikát a következtetések, fogalmak stb. közötti kapcsolatot kimutató logikai kifeje zések értelmezésében mutatkozó határozatlanságtól. A kiindulási tételekből logikai következtetéseket az algebrai műveleti szabályokhoz hasonló szabályok alapján, a logikai összefüggések formális átalakítása útján kapjuk. A logika algebrája, amelyet még ítéletkalkulusnak, is neveznek, a matema tikai logika első szükséges részét jelenti. ítélet lesz számunkra minden olyan kijelentés, amellyel kapcsolatban az állítás igaz vagy hamis voltának értelme van, például: a világ anyagi; ma 12-e van; a hó vörös; 9 páratlan szám. Az ítélet meghatározásából következik, hogy az vagy igaz, vagy hamis. Egyide jűén igaz és hamis vagy nem igaz és nem hamis ítéletek nem léteznek. Az egyes ítéleteket a latin abc nagy betűivel, A, B, C . . .-vei fogjuk jelölni. A logika algebrájában két ítéletet akkor tekintünk különbözőnek, ha tartalmuk különböző. Ebben az esetben különböző betűkkel jelöljük azokat. Az ítéletek tartalmát azonban csakis betűjelölésük bevezetésekor vesszük figye lembe, és a további vizsgálatoknál a tartalmat már nem vesszük számításba. Az ítéleteket csakis igaz vagy hamis voltuk alapján értékeljük (azok konkrét tartalmát figyelmen kívül hagyjuk). Az ítélet logikai értéke egységnyi, ha az ítélet igaz, és nulla, ha az ítélet karnis. Minden ítélet logikai értékét ugyanazzal a betűvel fogjuk jelölni, amivel magát az ítéletet jelöltük. Két ítéletet akkor mondunk egyenértékűnek, ha logikai értékeik azonosak. Két ítélet egyenértékűségét az egyenlőség jelével jelöljük. így az A = В írás mód azt jelenti, hogy az 4 és a £ ítéletek logikai értéke azonos, vagyis hogy egyidejűén igazak vagy hamisak. Az A = 1 írásmód azt jelenti, hogy az A íté let igaz. A C = 0 jelölés esetében a C ítélet hamis. Minden konkrét ítéletnek jól meghatározott logikai értéke van. Ez a logi kai érték azonban változó is lehet. Például a következő kijelentés logikai értéke: 87
„ma 12-e van” csakis az év tizenkét napján lesz az egységgel egyenlő. Logikai értéke az év valamennyi többi napján nulla. Gyakran használjuk az alábbi kifejezést: „vizsgáljunk valamilyen A íté letet.” Ebben az esetben tetszőleges ítéletről, ,,az ítéletről általában” van szó ,,Az ítélet általában” logikai értékét szintén változónak kell tekintenünk. Értéke zérus vagy egység attól függően, hogy milyen konkrét ítéletet azonosí tunk ezzel az „ítélettel általában”. Azt a változó mennyiséget, amely csak két értéket (0 vagy 1) vesz fel, bináris változónak, nevezzük. A későbbiekben majd olyan ítéletekkel találkozunk, amelyek logikai érté két más ítéletek logikai értékei határoznak meg, vagyis az előbbi ítéletek az utóbbiak függvényei. Azokat a függvényeket, amelyek csak két értéket (0 vagy 1) vesznek fel, és egy vagy több bináris változótól függenek, bináris függvé nyeknek. nevezzük. A matematikai logikát és különösen a logika algebrájának apparátusát az elektronikus digitális gépek elméletében széleskörűen alkalmazzuk. Az elektronikus digitális gépeknél, amelyek bináris számrendszerben vagy különböző binárisan kódolt számrendszerekben előállított számokkal dolgoz nak, legegyszerűbb elemként különböző kétállapotú szerkezeteket, tehát olyan szerkezeteket vagy áramköröket alkalmaznak, amelyeknek csak két, egymástól különböző állandó állapotuk van. A gépekben alkalmazott elektronikus elemek re vonatkozóan az egyik állapotot az elem kimenetén nagy feszültségszint jelenléte jellemzi, a másik állapot jellemzője a kis feszültség (feltételezzük, hogy az egyik állapot a bináris egységet, a másik a bináris nullát jelöli). Ezek az elemek a logikai változók, illetőleg az ítéletek logikai értékének előállítására szolgálhatnak. A kétállapotú elem egyik állapota az egységnyi logikai értéknek, a másik a nulla logikai értéknek felel meg. A matematikai logika ítéletei, a bináris számrendszer bináris számjegyei és az elektronikus digitális gépek kétállapotú elemeinek és áramköreinek üzeme közötti eme kapcsolat lehetőséget ad arra, hogy a logikai algebra szimbolikája segítségével funkcionális szempontból kedvező módon írjuk le a gépek áram köreinek és egységeinek üzemét és valósítsuk meg azok analízisét és szintézisét. A géphez tartozó egyes elemek és áramkörök lényegében különböző logikai ítéleteket realizáló berendezések. Természetesen a valóságos áramkörök üzemé nek leírásakor azok idealizálása megengedett; például az áramkörökben figyel men kívül hagyjuk az átmeneti jelenségeket, azaz feltételezzük, hogy a szük séges feszültségszint beállása és a vezetékek segítségével való továbbítása azonnal bekövetkezik, és ezek csak megadott diszkrét időpillanatokban történ hetnek meg (r = 0, 1, 2, 3, . . .). Minden áramkörre a két állapot, a nulla és az egy egymás komplemensei, ellenkezőek (vagyis kettő közül az egyik szükségszerűen fennáll). Ez az állítás megfelel a matematikai logikában a kizárt harmadik törvényének, amely szerint minden ítélet csak vagy hamis, vagy igaz lehet. Az elektronikus digitális gépek elméletére a matematikai logika apparátusát alkalmazva a következő alapvető feladatok megoldása lehetséges. Az áramkör analizálásának feladata. Valamilyen kész áramkör birtokában leírjuk annak üzemét logikai kifejezésekkel. Ezután a kapott logikai kifejezések formális átalakításával megvizsgáljuk az áramkör gazdaságosságának kérdé sét, tisztázzuk azt, hogy nem kapható-e olyan egyszerű, kisebb elemszámú áramkör, amely az adott függvényt megvalósítaná. 88
Az áramkör szintézisének feladata. Valamilyen, bizonyos logikai függvé nyekkel leírt logikai kifejezés birtokában meg kell határozni, hogy hány elemi áramkörből és milyen módon lehet azt a bonyolultabb áramkört összeállítani, amely az adott függvényt megvalósítja. Ebből a célból a kiinduló logikai kifeje zést célszerűen át kell alakítani és egyes tagokra kell felbontani oly módon, hogy minden ilyen tag elemi áramkörrel legyen előállítható. Az elektronikus digitális gép áramköreinek analízisére és szintézisére vonatkozó feladaton kívül a matematikai logikát az úgynevezett logikai váz latok formájában eme gépek elméletében is alkalmazzuk a gép munkaprogram jának és a logikai feltételek megfogalmazásának pontos és egyértelmű leírására. Közvetlenül ide tartoznak azok a problémák is, amelyek a feladat megoldásá hoz szükséges legkedvezőbb gépi algoritmus kidolgozásával és becslésével kapcsolatosak. Végezetül a programvezéreit elektronikus digitális gépek az információ logikai feldolgozására szolgáló olyan eszközök, amelyek lehetővé teszik a mate matikai logika formális feladatainak megoldását, nevezetesen reléáramkörök és az elektronikus digitális gép áramköreinek analízisét és szintézisét. Az elmondottakból világos a matematikai logika és az elektronikus digi tális számítógépek elmélete közötti közvetlen, szoros kapcsolat. Lényegében a matematikai logika az elektronikus digitális gépek elméletének alapját képezi és a matematikai logika elemeinek ismerete szükségszerű mind a gépek terve zésének, mind az elektronikus digitális gépek programozásának területén vég zett munkában. 11.2. Összetett ítéletek. Logikai kapcsolatok. Logikai műveletek. Egy. vagy több egyszerűnek nevezett ítéletből összetett ítéletet alkothatunk. Egy szerű ítéletekből összetett ítéletek alkotása és az ítéletkalkulussal való számí tás az ítéletek belső tartalmának (értelmének) figyelembevétele nélkül törté nik. Az egyszerű ítéleteknek összetett ítéletekké való egyesítésére a logikai kapcsolat jeleit használjuk. Vezessünk be néhány alapvető összetett logikai ítéletet és logikai kapcsolatot. 1. Az A ítélet negációja. Jelölése az A szimbólummal történik. Olvasása: A negált. A felülvonás logikai kapcsolati jelet negáltnak olvassuk. Az ítélet negációjának nevezzük azt az összetett A ítéletet, amely igaz, ha A hamis, és hamis, ha A igaz. A negált ítélet logikai értékét az eredeti ítélet logikai értéke alapján a 9. táblázat szerint a negáció művelete segítségével kapjuk meg. 9. TÁBLÁZAT
N egáció
Ö= 1 1=0 Ebből a táblázatból látható, hog/ A — A,
(II.1)
amennyiben az A szimbólum alatt az (Ä) szimbólumot értjük. Valóban 0 = (o) = 1 = 0; i = (T) = ö = 1. 89
2. K ét ítélet konjunkció j a . Jelölése az А Д 1> szim bólum m al tö rtén ik O lvasása: A és В . А Д logikai kap cso lati jel értelm e m egegyezik az és kötőszó értelm ével. K é t íté le t JconjunJcciója az ö sszetett ítélet, am elyik a k k o r és csakis ak k o r igaz, h a m in d k ét alkotó íté le t igaz. M inden to v á b b i esetben ez az össze t e t t íté le t ham is.
Az А Д В konjunkció logikai értékét az A és В alkotó ítéletek logikai értékéből az úgynevezett logikai szorzás műveletének segítségével kapjuk, amit a 10. táblázaton tüntettünk fel. A konjunkció meghatározásából, valamint a 10. táblázatból következik,* hogy A A A A
A 0 = 0, A 1=A, a A = A, A A = 0;
(И.2)
( I I . 3)
(II.4) А (II.3) egyenlőség azt jelenti, hogy a logikai szorzás művelete kommutatív. А (II.4) egyenlet arról tanúskodik, hogy a logikai szorzás asszociatív. 10. TÁBLÁZAT
Logikai szorzás
0Д0 = 0 ОД 1 = 0 1Д0 = 0 1Л 1 = 1
11. TÁBLÁZAT
L ogikai összeadás
0V0 = 0 0V1= 1 XV 0 = 1 1V 1 = 1
3. Két ítélet diszjunkciója. Jelölése az A \J В szimbólummal történik. Olvasása: A vagy B. A \J logikai kapcsolati jel értelme megegyezik a vagy kötő szóval. Sok nyelvben, így a magyar és orosz nyelvben is a vagy kötőszót több, különböző értelemben használjuk, éppen ezért itt szabatosabbá kell tenni kije lentésünket. А V logikai jel a következő kifejezésben használt vagy szó értelmé vel azonos: ,,az ébresztőóra hangjára Péter vagy Iván felébred” (itt a vagy nem zárja ki azt a lehetőséget, hogy mindketten felébrednek). Létezik egy kizáró vagy szóhasználat is, például a következő kifejezésben: „Válassz: ő vagy én.” A kizáró vagy értelmét is felhasználhatjuk az egyik logikai kifejezés gyanánt, azonban ezt nem szabad összetévesztenünk a diszjunkciónál alkalmazott vagy értelmével. A diszjunkció olyan összetett ítélet, amely csakis akkor hamis, ha mind két alkotó ítélet hamis, és minden más esetben igaz. Az А V В ítélet logikai értékét az A és В alkotó ítéletek logikai értéke alapján az úgynevezett logikai összeadás & 11. táblázatban meghatározott műve letek segítségével adja meg. * А (II. 3) és (II.4) összefüggések helyességéről Oly m ódon g y őződhetünk meg, hogy az A és a U helyébe a 0 és 1 érték ek különböző k o m binációit h ely ettesítjü k , és igyelem be vesszük a 10. táblázitot. 90
A diszjunkció meghatározásából és a 11. táblázatból az alábbi összefüg gések helyessége ismerhető fel:* A V 0 = A, А V 1 = 1, А V A = A, А V A = 1, i V5 = 5Vd,
(II.5) (II. 6 )
А (II.5) összefüggés azt jelenti, hogy a logikai összeadás művelete kommutatív. А (II. 6 ) összefüggés arra utal, hogy ez a művelet asszociatív. 4. Két ítélet ekvivalenciája. írásmódja: A ~ B. Olvasása: A ekvivalens B-vel. Két ítélet ekvivalenciája olyan összetett ítélet, amely akkor igaz, ha a két alkotó ítélet logikai értéke azonos, ellenkező esetben pedig hamis. Az А —' В összetett ítélet logikai értékét az A és В alkotó ítéletek logi kai értéke alapján a 12. táblázatban meghatározott logikai művelet segítségé vel kapjuk meg. 12.
TÁBLÁZAT
Az ekvivalencia m űvelete
13. TÁBLÁZAT
Az ekvivalencia negációja
0 —0 = 1 0 —1 = 0 1 —0 = 0
0 —0 = 0 0 —1 = 1 1 —0 = 1
1— 1= 1
1— 1 = 0
A 12. táblázat alapján az alábbi kifejezések helyessége közvetlenül iga zolható: A ~ 1 = А; (II.7) А ~ О = А. (II. 8) 5. Két ítélet ekvivalenciájának negációja. Két ítélet ekvivalenciájának negációja olyan összetettebb ítélet, amelyet két korábban már leírt logikai kap csolat segítségével nyerünk : A ~ B. Számunkra kényelmesebb az ekvivalencia negációjának ábrázolására külön jel bevezetése. Vezessük be erre a célra a jelet (olvasása: nem ekvivalens). így А —- В = A ^ B. A korábban vizsgált 9. és 12. táblázat segítségével kapjuk a 13. táblá zatot. Ez a táblázat az ekvivalencia negációjának logikai műveletét határozza meg és lehetőséget ad arra, hogy az A és В alkotó ítéletek logikai értéke alap ján az А 7*=>В összetett ítélet logikai értékét megkapjuk. Az ekvivalencia negációjának műveletét a gépekben mint nyomonként végrehajtott műveletet használjuk fel, amelynek segítségével a számokat összehasonlítjuk. A 13. táblázatból következik az alábbi összefüggés helyessége: (II.9) * А (II.5) és (II.6) összefüggések helyességéről úgy g y őződhetünk meg, hogy az A és В helyébe a 0 és 1 érték ek különböző kom binációit h ely ettesítjü k , és a 11. táblá za to t alkalm azzuk. 91
Könnyű felismernünk, hogy (11.10) A korábban megadott logikai műveleti táblázatok segítségével közvetle nül meggyőződhetünk az alábbi összefüggés helyességéről is: (11.11) Közvetlen ellenőrzéssel igazolhatjuk az alábbi összefüggés helyességét (И.12)
ami azt jelenti, hogy a logikai szorzásra (a logikai összeadás viszonylatában) érvényes a disztributivitás törvénye, hasonlóan az algebrához, ahol ez a tör vény a szokásos szorzásra (a szokásos összeadás viszonylatában) érvényes: (11.13) A logika algebrájában még egy második disztributivitási törvény is érvé nyes a logikai összeadásra (a logikai szorzás viszonylatában): (11.14) Ennek az összefüggésnek helyességéről oly módon győződhetünk meg, hogy az А, В és C helyébe a nulla és az egység valamennyi kombinációját behelyette sítjük: 0, 0, 0 ; 0 , 0 , 1 ; . . 1, 1, 1 . A közönséges algebrában a (II.14)-nek megfelelő összefüggés a következő volna: (11.15) Mint ismeretes, ez az összefüggés nem igaz. Minthogy a logikai szorzás és a logikai összeadás kommutatív és asszo ciatív, a konjunkciós és diszjunkciós többtagúakat zárójel nélkül írhatjuk^ Például a [(А Д В) Л C\ Л D vagy А д [В Д (С Л D)~\ helyett egyszerűen az А Д В Д С Д .D kifejezést írhatjuk. Ugyanígy [(A V -S) V С] V ö vagy i V [ß V (С V U)] helyett i V ß V ^ V 5 állhat. A zárójelek számának további csökkentésére a logikai képletekben azt a megállapodást tesszük, hogy а Д jel szorosabb kapcsolatot jelöl, mint a V jel, és ez utóbbi ugyancsak szorosabb kapcsolat jelölésére szolgál, mint a vagy a ~ jel. Ezzel a kifejezéseknek az algebrában elfogadotthoz hasonló írási szabályával állapodtunk meg (az algebrában azt mondjuk, hogy a szorzás és az osztás „magasabbrendű” művelet, mint az összeadás és a kivonás; a számí tás során a magasabbrendű műveleteket az alacsonyabbrendűek előtt kell elvégezni). Ez az összhangba hozás lehetővé teszi, hogy (А Д B) \J C helyett egyszerűen А Д В V C kifejezést írjunk (ily módon a logikai szorzás maga sabbrendű művelet, mint a logikai összeadás). A képletek nagyobb áttekint hetősége céljából azonban a későbbiekben, a bonyolult kifejezésekben gyakran használunk zárójeleket. 92
6. Két ítélet implikációja. Jelölése az A — > В szimbólummal történik. Olvasása: ha A, akkor B. Két ítélet implikáció]a olyan összetett ítélet, amelyik akkor és csakis akkor hamis, ha előtagja (A) igaz és utótagja (B) hamis. Meg kell jegyeznünk, hogy az implikációnak nincsen az ok és az okozat között kapcsolatbeli értelme, vagyis az A ítélet igaz voltából még nem követ kezik szükségszerűen В igaz volta. Ugyanakkor elegendő az A ítélet hamis volta ahhoz, hogy az implikációt alkotó összetett ítélet igaz legyen. Az implikáció logikai jelentőségét a 14. táblázattal határozzuk meg. 14. T Á B L Á Z A T
15. T Á B L Á Z A T
Im plikáció
Sheffer-féle m űvelet
0^0
=
1
0 -> 1 = 1 1 -> 0 = 0 1 1 = 1
0/0
=
1
0/1 = 1 1/0 = 1 1/1 = 0
7. Sheffer-féle művelet (két ítélet ,,összeférhetetlensége”). Az A és В ítélet A/B-ve 1 jelölt Sheffer-féle kapcsolata, olyan összetett ítélet, amely akkor és csakis akkor hamis, ha mindkét alkotó ítélet igaz. A Sheffer-féle kapcsolat logikai értékeit a 15. táblázat határozza meg. A Sheffer-féle logikai kapcsolat az elektronikus digitális gépek elméle tében és a logikai kapcsolások elméletében fontos szerepet játszik .Valamennyi logikai kapcsolat kifejezhető a Sheffer-féle kapcsolat segítségével és így a Sheffer-féle kapcsolatot realizáló elektronikus kapcsolás olyan univerzális elemet alkot, amelynek segítségével elvben a gép számoló, valamint vezérlő egységeinek bármilyen funkcionális kapcsolása felépíthető. 11.3. Az algebrai logikai műveletek geometriai értelmezése A nélkül, hogy a logikai finom ságokban elm élyednénk, az algebrai logikai m ű v e le tek geom etriai (szabatosabban halm azelm életi) m egvilág ítására egyszerű és szem léletes m ódszert közlünk. Legyen a d v a valam ilyen A ítélet. Legyen ezenkívül a tá rg y a k n a k valam ilyen halm aza, am elyekre vonatkozóan ez az íté le t alkalm azható, am ikor, h a m in d en em líte tt tá rg y ra ezt az íté le te t alkalm azzuk, m eg állap íth atju k , hogy a tá rg y ra v o n atkozóan az íté le t igaz-e (a logikai érté k 1), vagy ham is (a logikai érté k 0). O lyan tá rg y a k , am elyekre v o n atkozóan az A sem 0, sem 1, vagy egyidejűén 0 és 1, h alm azu n k b an nem szerepel h etnek. A rra az ítéletre például, hogy „ a gerinces á lla t ragadozó” , a gerinces állato k összessége alk o t tárg y h alm azt. E z t a kijelentést valam ilyen k o n k rét gerinces á lla tra alkalm azva m e g állap íth atju k íté letü n k megfelelő logikai érték ét. A teh én a halm az egyik olyan tá rg y á t alk o tja, am elyre vonatkozóan az íté le t logikai értéke 0. A farkas szin tén olyan tárg y , am elyre vonatkozóan az íté le t alk alm azh ató ; erre a tá rg y ra nézve az ítélet logikai értéke 1. A rra az ítéletre, hogy „x szám szinusza kisebb, m in t 1/2” j vagyis sin ж < -^ j az em líte tt tárg y h alm az valam ennyi valós szám halm aza. Az x = 1 érték re az ítélet logikai értéke 0 ^m inthogy sin 1 > - j , az x = 0,1 esetében viszont az ítélet logikai érték e 1 ím in th o g y sin 0,1 < —1 . V
*j
„A sík valam ely p o n tjá n a k ugyanazon sík G p o n tjá tó l m é rt távolsága kisebb m in t 2” ítéletre vonatkozóan a tárgyhalm az, am elyre az íté le t alkalm azható, a sík összes p o n tjaib ó l álló halm az. V alam ennyi olyan po n t, am elyre vonatkozóan az ítélet
93
logikai értéke 1, a C pontból, mint középpontból 2 sugárral húzott körön belül fekszik. A fenti kör kerületén levő és ezen a körön kívüli pontokra nézve az ítélet logikai értéke 0. Tételezzük fel, hogy minden tárgy, amelyre vonatkozóan az A ítélet alkalmazható, az xOy sík valamilyen pontjával van ábrázolva (vagyis ezzel a ponttal kölcsönösen egy értelmű kapcsolatot létesítettünk*). A nagyobb szemléletesség kedvéért arra az esetre szorítkozunk, mikor valamennyi említett pont valamilyen Q négyzetet tölt ki. A Q négyzet pontjait két osztályba soroljuk. Az egyik osztályhoz azokat a pontokat soroljuk, amelyekre A = 1, a másikhoz pedig, amelyekre A — 0. Világos, hogy a Q négyzethez tartozó pont szükségszerűen az egyik osztályhoz, éspedig csakis az egyik osztályhoz tartozik. A Q négyzet első osztályához tartozó ponthalmazát (amely pontokra vonatko zóan A = 1) az A ítélet geometriai ábrázolásának fogjuk tekinteni és kényelmi szempont ból A halmaznak fogjuk nevezni. Ez esetben kaphatjuk meg például а 19. ábrán fel-
fő. ábra. A leképezése а vonalkázott halmazzal
20. ábra. А Д В leképezése
a vonalkázott halmazzal
21. ábra. А V ff leképezése
a vonalkázott halmazzal
tüntetett képet. Az A ítéletet ezen a képen valamilyen zárt görbe által határolt tarto mány ábrázolja. Nyilvánvaló, hogy az A (A negált) ítéletet ekkor a Q négyzet valamennyi többi pontjának halmaza ábrázolja. Ekkor a két ítélet konjunkeiójából alkotott ítélet ábrázolása két halmaz metszete lesz (2 0 . ábra). Valóban, az А Д В — 1 csakis akkor helyénvaló, ha A = 1 és В = 1, ami csakis azokra a pontokra érvényes, amelyek egyidejűén, mind az A , mind а В halmazhoz tartoznak (azok metszetéhez tartoznak). A halmazelméletben ezt a halmazt az A • В szimbólummal jelöljük.5 Két ítélet diszjunkcióját (А \/ B) a z a halmaz fogja ábrázolni, amelyet az A és В halmaz egyesítéséből kapunk (21. ábra). A halmazelmé letben ezt a halmazt az A -j- В szimbólummal jelöljük.6 Az А ~ В ítéletet (A ekvivalens B-vel) a 22. ábrán feltüntetett módon ábrázol juk, minthogy А ~ В igaz, akár A = 1 és В = 1, akár A = 0 és В = 0. A 22. ábrán többek között megfigyelhető, hogy A ^ B = A / \ B \ J A / \ B ; a képlet helyességét könnyen igazolni lehet a logikai műveletek táblázatai segítségével. Az A /В ítéletet a 23. ábrán ábrázoljuk. Az А ^ В ítéletet a 24. ábrán tüntetjük fel. Az ábrázolást nehézség nélkül meg kapjuk, ha figyelembe vesszük, hogy А ~ В — A B.
В leképezése a vonalkázott halmazzal
22. ábra. А
23. ábra. А | В leképezése
a vonalkázott halmazzal
24. ábra. A r ^ B leképezése
a vonalkázott halmazzal
* Arra az esetre szorítkozunk, amikor a tárgyhalmaz, amelyre az A ítéletet alkalmazzuk, a kontinuumnál nem nagyobb számosságú. •ú Két halmaz metszetének szokásos jelölése még: A f) В (Szerkesztő) Két halmaz egyesítésének szokásos jelölése még: Л U В (Szerkesztő) 94
11.4. A logikai műveletek közötti kapcsolatok. Az előbb említett logikai műveletek nem függetlenek egymástól és egyik a másikával kifejezhető. Így a kapcsolat ekvivalencia és ebből kifolyóan ^ (az ekvivalencia negációja), a (negált) Д (és) és a V ( V(4!V) műveletek segítségével előállítható. Az olvasónak hagyjuk azt, hogy közvetlen behelyettesítés útján (a logikai műve letek megadott táblázatainak felhasználásával) a következő egyenértékűségek helyességét igazolja: (11.16) (П.17) Megemlítjük ezen kívül a konjunkció és diszjunkció negáltjai között fennálló kapcsolatokat :7) (11.18) (11.19) Eme kapcsolatok helyességét a 16. táblázat segítségével könnyen igazolhatjuk. 16.
TÄBLÄZAT
A logikai függvényértékek összeállítása
0 0 1 1
0 1 0 1
1
1 1
0 0
0 0
1 0
1 0
0 1
1 1
1 0
0 1
1 0
1 1
1 1
1 0
0 0
1 0
0 0
1 1 0
Az implikációt továbbá a konjunkció és negáció segítségével a követ kezőképpen fejezhetjük ki: A В = A /\B. (11.20) A képlet helyessége abból következik, hogy az A -> В igaz volta mellett nem lehet egyidejűén A igaz és В hamis. Minthogy azonban В = В és a (II.18)-nak megfelelően А Д В = А V B, ezek szerint: A ^ B = Ä \/B . Ugyancsak helyes az alábbi kifejezés:
(11.21)
А V В = Ä -> В,
(11.22)
erről a 9 ., 11. és 14. tá b lá za to k n a k megfelelő logikai értékek egyszerű behelyet tesítésével meggyőződhetünk. Láthatjuk tehát, hogy valamennyi logikai kapcsolat a három alapkap csolat — a negáció, a diszjunkció és a konjunkció — segítségével kifejezhető. Az utóbbi kapcsolatok egyedül a Sheffer-íé\e kapcsolat segítségével fejezhe tők ki. Győződjünk meg erről. 9 E zek az ún. De М огдап-Ш в azonosságok. (Szerkesztő)
95
nyes:
A Sheffer-féle kapcsolatra vonatkozóan a következő összefüggés érvé A /A = Ä .
(11.23)
Ez a 9. és 15. táblázatból látható. A (11.23) képlet a negációt fejezi ki a Shefferféle kapcsolattal. Ugyanakkor azonban a Sheffer-íéle kapcsolat nem más, mint a konjunkció negációja: A/B = А Д B. (11.24) Erről a 16. táblázat segítségével könnyen meggyőződhetünk. A (11.24) egyenlőség mindkét oldalát negálva:
A f \ B = J[B. A (11.23) k ép let felhasználásával: А Л В = (A/ B) / ( A/ B) .
(11.25)
A (11.25) összefüggés a konjunkciót a Sheffer-féle kapcsolattal fejezi ki. A (11.24) és (11.18) képletekből: i / 5 = i V B.
(11.26)
Ha az egyenlőségben az eredeti ítéleteket azok negáltjaival helyettesítjük, ennek következtében az egyenértékűség nem változik meg. Következésképpen: Ä/B = A \J B.
(11.27)
Végezetül a (11.24) egyenlőséget felhasználva a Sheffer-féle kapcsolat segítségével kifejezett diszjunkciót kapjuk: (11.28) Hasonló módon fejezhetjük ki a Sheffer-féle kapcsolat segítségével vala mennyi többi logikai kapcsolatot. 12. A logikai kifejezések átalakítása
12.1. A logikai kapcsolatok normál alakjai. A logikai kifejezések szer kezetét akkor tekinthetjük át legjobban, ha azokat valamelyik úgynevezett normál alakban állíthatjuk elő. A logikai kifejezéseknek két normál alakja van. Az első, a konjunktív normál alak a diszjunkciók valamilyen konjunkciója, ahol a diszjunkciók egyes tagjai vagy elemi ítéletek vagy azok negáltjai. A második, a diszjunktív normál alak, a konjunkciók valamilyen diszjunkciója; az egyes tagok valamennyi konjunkcióban vagy elemi ítéletek vagy azok negáltjai. A logikai ítéleteknek egyik vagy másik normál alakba való átalakítása az alábbi fontosabb szabályok alkalmazásával történik (ezek az alapvető szabá lyok bizonyos mértékben az előző szakaszokban mondottakat ismétlik): 1. az A és V jeleket ugyanúgy alkalmazhatjuk, mint az algebrában az X (szorzás) és a -f- (összeadás) jelét, a kommutativitás, az asszociativitás és a disztributivitás törvényeinek felhasználásával; 96
2 . olyan kifejezéseket, amelyben két (vagy általában páros) negáció van, az alábbi elemi ítélettel helyettesíthetjük:
I = A;
(11.29)
3. a konjunkció negációját a negáltak diszjunkciójával, a diszjunkció negációját a negáltak konjunkciójával helyettesíthetjük: А Л В = Ä \ J Б.
A \/ll = Ä Л Б [а (11.18) és (11.19) összefüggések]; 4. az А -» В kifejezést az A \J В (11.21 összefüggés), az А ~ В kifeje zést pedig a (A \J B) f\ (А у B) kifejezéssel (II. 16. összefüggés) helyettesít hetjük. Eme szabályok használatának sorrendje a következő: először a kifejezés ben található implikációkat és ekvivalenciákat a 4. szabály felhasználásával helyettesítjük; ezután a 3. szabály felhasználásával a kifejezést olyan alakra hozzuk, amikor a negáció jele csak egyes tagokra vonatkozik; végezetül az 1. és 2 . szabály alkalmazásával a kifejezéseket felosztjuk és kiküszöböljük a kétszeres negációs jeleket. Hozzuk például az (A - + B ) ~ ( B - + A )
logikai kifejezést konjunktív normál alakra. A 4. szabály alkalmazásával küszöböljük ki az implikációt: (А
у В) ~
(В
V A).
Ezután a (11.16) segítségével: A 3. szabály alkalmazásával: Hagyjuk el a felesleges zárójeleket, és vegyük figyelembe, hogy
végső eredményünk: ( i V ß ) A ( i V B).
Megjegyezzük, hogy az így adódott konjunktív normál alak a logikai kifejezés nek nem a legegyszerűbb alakja. Az utóbbi kifejezés például A alakra hozható. 12.2 A zonosan igaz és ham is k ifejezések . A normál alak a logikai kifeje zések vizsgálata, nevezetesen a kifejezések két osztályba való sorolása szem pontjából kedvező. Az egyik osztályba tartoznak az úgynevezett azonosan igaz, a másodikba pedig az úgynevezett azonosan hamis kifejezések. Az összetett ítélet igaz vagy hamis volta általánosságban az összetett ítéletekben szereplő elemi ítéletek logikai értékétől függ. De szerkeszthetünk t K ito v — K rinyickij
97
olyan összetett ítéletet, amelyeknek logikai értéke, az elemi ítéletek választott logikai értékétől függetlenül állandó.8) Az összetett logikai kifejezések egysze rűsítése során az azonosan igaz ítéleteket ki kell derítenünk, és el kell hagy nunk vagy egyetlen szimbólummal kell helyettesítenünk azokat. Minthogy minden logikai kifejezés normál alakra hozható, a fenti kérdés megoldására elegendő az összetett kifejezések normál alakjának vizsgálata. Az azonosan igaz vagy azonosan hamis kifejezésekről egyszerű szabályok alkalmazása alapján a következő következtetéseket vonhatjuk le. 1. Az A V Ä kifejezés állandóan igaz; 2. amennyiben A igaz és В tetszőleges ítéletet jelöl, akkor az A \J В kifejezés igaz; 3. ha A és В igaz, akkor az А Д В kifejezés is igaz. A felsorolt három egyszerű szabály alapján az összetett kifejezések igaz voltának meghatározására kaptunk eljárást. Azonosan igaz az a kifejezés, amelynek konjunktív normál alakjában, minden diszjunkcióban legalább egy elemi ítélet negáltjával együtt szerepel. Világos, hogy ez esetben minden diszjunkcióban legalább egy tag igaz, vagyis a konjunkció tagjait képező egész diszjunkció is igaz lesz, ezek szerint az adott logikai kifejezést előállító egész konjunkció szintén igaznak fog bizonyulni. Az azonosan hamis kifejezéseket hasonló módon a diszjunktív normál alak alapján határozzuk meg. 12.3. A z összetett logikai kifejezések sokrétűsége. Vizsgáljuk meg a matematikai logika következő kérdését: hány különböző, vagyis logikailag nem egyenértékű olyan összetett logikai kifejezés létezik, amelyet véges számú, elemi ítélet kombinációjával képezhetünk. Az n egyszerű A x, A 2, . . ., A n ítélet ből kialakított összetett kifejezés akkor lesz egyenértékű a másik kifejezéssel, ha az elemi A v A 2, A „ ítéletek logikai értékének minden kombinációjára nézve a két összetett kifejezés logikai értéke azonos lesz. Minthogy az n elemi ítélet logikai értékeire 2n kombinációt kaphatunk,9)és az elemi ítéletek minden ilyen 2n kombinációja esetében az összetett kifejezés vagy igaz, vagy hamis, az n egyszerű elemi ítéletből 22" különböző összetett kifejezést alkothatunk. Legyen adva két elemi A és В ítélet vagy más szóval két független biná ris változó. Két bináris változóból 22 = 4 különböző logikai értékkombinációt alkothatunk, és belőlük 22! = 24 = 16 különböző alakú összetett kifejezést (azaz két független bináris változótól függő függvényt) állíthatunk össze. Az elmondottakat a 17. táblázat szemlélteti. Vizsgáljuk meg, vajon milyen műveletekkel kapjuk meg ezt a 22* ítéletet, vagyis elemezzük az összetett ítéletekben, az ítéletek közötti kapcsolat formái nak kérdését. A 17. táblázatban a két elemi ítélet (A, B) összekapcsolása esetén nyerhető lehetséges 16 összetett ítéletet tüntetünk fel. Könnyen meggyőződ hetünk arról, hogy a táblázat valamennyi lehetséges esetet tartalmazza. A 17. táblázatban az alsó sor az elfogadott jelölési rövidítések listáját tartal mazza, ahol
8) Ha ez az állandó logikai érték 1 (igaz), akkor az összetett ítéletet tautológiának nevezzük. (Szerkesztő) 9) Könnyen belátható, hogy ez nem más, mint a logikai értékek két lehetséges esetéből (1 és 0) alkotható n-ed osztályú ismétléses variációk száma, vagyis F«(=2". (Szerkesztő) 98
1. А
és, konjunkció; vagy, diszjunkció; 3. А —> В akkor, ha, implikáció; 4. A В ha, akkor, fordított implikáció; 5. А ~ В ekvivalencia; 6 . А Д В = Aj В összeegyezhetetlenség vagy a Sheffer-féle kapcsolat, a konjunkció negációja; 7. A V В sem . . . sem, a diszjunkció negációja; 8 . A -> В ha nem ... , akkor nem . . . az implikáció negációja; 9. A В sosem, ha nem, a fordított implikáció negációja; 10. А ~ В az ekvivalencia negációja; 11. A tehát a 5-től független összetett ítélet; 12. Ä A negáltja; 13. В az A -tói független összetett ítélet; 14. В а, В negáltja; 15. 1 mindig igaz-, 16. 0 mindig hamis. Д
В
2. А V В
17.
TÁBLÁZAT
K ét független bináris változó bináris függvényei A
В
1
,
2
3
4
-
5
6
7
j
0
0
0
0
1
1
o
i
o
i
i
o
1
0
0
1
0
1
1
1
1
1
1 1
I 8
9
10
11
12
13
14 j 15
16
j
1
1
'
o
0
| i
l 1
|
| 0
1
0
0
0
0
1
0
1
1
0
o
o
i
i
o
i
i
o
i
o
0 0
1 0
0 0
1 0
1 1
0 0
—
0 1
1
1
0
0
1
0
i
о
A 17. táblázat 6 . . . . 10 . eseteinek vizsgálata azt mutatja, hogy azok egysze rűen az 1. . . . 5. esetek negáltjai. 12.4. Logikai kifejezések átalakítása. Az egyszerű átszámítási szabályokalkalmazásával könnyen kaphatunk összetett ítéleteket, alakíthatunk ki logi kai egyenlőségeket. Azokban az esetekben, amikor két vagy három kiindulási ítéletünk van, a logikai egyenlőséget egyszerű behelyettesítés útján könnyen ellenőrizhetjük. Ellenőrizzük a következő egyenlőséget: (А V A) -+A = 1,
(11.30)
(„ha A vagy A, akkor A mindig igaz”). A 18. táblázat igazolja eme egyenlőség helyességét. Tehát az alábbi kifejezés: (А V A) -+A függetlenül attól, hogy A igaz-e vagy hamis, mindig igaz. Ellenőrizzük a következő kifejezést: (II 31) 7*
99
vagy egyszerűen A -> (В V A). Az igazolást a IP. táblázat formájában végez zük el. A kapott értékek a (II. 31) kifejezés helyességét igazolják. 18.
TÁBLÁZAT
19. TÁBLÁZAT
(A\JA)-+A = 1 A
A4 A
A - + ( B \ J A)
U 4 A)^A
A
I
В
( В V A)
A-*(B\/A)
_______ I___________ J______________ _______________ I__________________i__________
0 0 1 1
1 1
0 0
1 1
1 1
0 0 1 1
0 1 0 1
1 1 1
0
1 1 1
1
Hasonlóan igazolhatjuk az (A V В) - + ( B у A) = 1
kifejezést, valamint a három A, В , C ítéletet tartalmazó kifejezést is: (A B) -*■ [(С V A) -> (С V Д)] = 1. A 20. táblázatban a kapcsoló hálózatok analízis- és szintézisfeladatainak megoldásánál a leggyakrabban szükséges logikai kifejezések átalakítására vonatkozó néhány szabályt állítottunk össze. Megjegyezzük, hogy az A, B, C, D kifejezések maguk is tetszőleges összetett logikai kifejezések lehetnek. A 7. és 20 . képlet azt mutatja, hogy az egyenlőség bal oldalához még egy vagy több, a kifejezés bal oldalán már szereplő elemekből álló tagot lehet hozzáfűzni, ettől a kifejezés logikai értéke nem változik meg. A 18. egyenlő séghez a 20. táblázat 3. . . . 6 . kifejezése közül bármelyik azonosan igaz kifejezést helyettesíthetjük, ettől az összetett kifejezés logikai értéke nem változik meg; így: minthogy (А V A) = 1, vagyis azonosan igaz kifejezés. 20. TÁBLÁZAT
Néhány szabály a logikai kifejezések átalakítására 1 .
( A
^
A
)
=
o
2. ( А д Bj л (л V -В) = о 3. А V А = 1 4. (А / \ jB) V ( А / \ В ) \ у (Л Д В) у ( А А В) — 1567
5. А V (В V -4) = 1 6. ( А \ / В) V ( А / \ В) = 1 7. А\ у Л = А / \ А = А 1 00
A 20. táblázat folytatása
8. А Л (А V В) = А 9. А \ / ( А / \ В ) = А 10. ( 4 Д В ) У И Л В) = А Л (В V В) = А И. А у ( А Д В) = Л Д (1 V В) = Л ________ ____________ 12. л у ( ^ А B) = i V ß 13. М Л Д ) у ( в л 0 ) у ( 4 л с ) = ( 1 у Д )Л ( B y ö ) A ( J y g ) 14. .4 Л (В V С) = (Л Д В) V (А Л С) 15. Л V ( В А О) = (А V В) Л
V С) 16. (А V В) Л (О V Д) = (А Л С) V (А Л Л)V (Я Л О) V (В Л т 17. (4 Л В) V (С Л В) = (А V С) Л М V В) Л (В V С) Л (В V -D) 18. А Л в Л 1 = -4 A B 19. А \ у В \ / 0 = A \ J В 20. A \ J B \ J C = A \ J B \ J C \ J C \ / B . . .
Megjegyezzük, hogy а 20. táblázatban feltüntetett kifejezések csakis és, vagy kapcsolatot, valamint az А, В, C elemi ítéletek negáltjait tartalmazzák. Mint korábban kimutattuk, valamennyi ítéletet kifejezhetünk elemi ítéletek konjunkciójával, diszjunkciójával és negációjával. A 20. táblázatban megadott egyenlőségek alkalmazása sok esetben a bonyolult logikai kifejezések lényeges egyszerűsítését teszi lehetővé, és így azok az áramköri megvalósítás szempont jából a legkedvezőbb alakra hozhatók. A 21. táblázatban a korábbi anyag általánosításaként bizonyos kapcsola tokat az elemi ítéletek konjunkciójával, diszjunkciójával és negációjával elő állított kifejezések összeállításával adjuk meg. 21. TÁBLÁZAT
B izo n y o s k a p c so la to k k ife jezé se n o rm á l a la k b a n
1. A
В = А У В
2. A + -
В = A \J В
3. 4 ~ B = (4V Bj Л (Ä V B) = ( Ä Л В) у (А Л B) 4. A~K В = А V В 5. А V В = А Л В 6. A — В = А А В 7. лТГВ = А Л В 8. ZiA В = (Л Л В) V (А Л В) = (Л V В) Л (Л V В)
А 21. táblázat 4. és 5. képletéből adódik a gyakorlati felhasználás szem pontjából igen fontos következő szabály: az elemi ítéletekből és negáltjaikból csakis a konjunkció és diszjunkció kapcsolatával előállított kifejezések ellen 101
tétjét а Д és V jelek helyének felcserélésével és az elemi ítéleteknek negáltjaikkal való helyettesítésével kapjuk. E szabály azonosan igaz ítéletekre alkalmazása az úgynevezett dualitási elvhez vezet: az elemi ítéletekből és azok negáltjaiból a konjunktív és diszjunktív kapcsolat segítségével kialakított P ~ Q azonosan igaz képletből, а Д és V jelek felcserélésével ismét azonosan igaz kifejezést kapunk. Például a Д ( В V С) ] ~ [ ( А Д В ) V ( A A C) ] kifejezés azonosan igaz (lásd 20. táblázat 14.); ebből a dualitás elve alapján ismét azonosan igaz kifejezést kapunk: \A
[А
V
(В
Д
С )]
-
[(А
V
В)
Д
(А
V
C) ]
(lásd 20. táblázat 15.). 13. Az elektronikus áramkörök kapcsoló (nemlineáris) elemei Az elektronikus digitábs gépekben az áramkörök kialakítására használt kapcsoló (nemlineáris) elemekhez az elektroncsöveket, a félvezető diódákat és triódákat, a mágneses vasmagokat és néhány más elemet soroljuk. Ezek az elemek a gépekben a jelek kapcsolására, rögzítésére vagy előállítására, az infor máció kiadására, az egységek üzemének és a gép berendezéseinek vezérlésére szolgálnak. Közben ezek az elemek a gépben megvalósított információátalakí tás általános folyamatában kapcsolási műveleteket végeznek. A kapcsolás feladatán kívül a fenti elemek közül némelyeket (például elektroncsöveket) és számos más elemet (kondenzátorokat, ellenállásokat stb.) műszaki segédcélokra szolgáló áramkörökben is alkalmaznak (jelek formálása és erősítése, jelek polaritásának megváltozta tása, szinkronizálás stb.). Röviden emlékeztetünk az elektroncsövek működésének elveire, és részletesebben tárgyal juk a félvezető és mágneses elemek működését. Figyelembe vesszük azok újszerűségét és külö nös fontosságukat az elektronikus digitális gé pek technikája szempontjából. A kapcsoló elemeket a gépekben elsősor ban a bináris számok villamos előállítására használjuk. Erre a célra két különböző jelet kell fizikailag megvalósítani, amelyek közül egyik a 0-nak, a másik az 1-nek felel meg. A 0 és 1 számjegyeket villamos jelekkel 25. ábra. A 0 és 1 szám jegyek két különböző módon állíthatjuk elő. előállítása villam os jelekkel Statikus módszer. Ennél a módszernél két különböző feszültségszintet használunk. Az Un nagyfeszültség például az egységet, az Uk kisfeszültség a nullát jelölheti. A megfelelő feszültségszint az adott szám előállításának teljes időtartama alatt megmarad. Amennyiben több azonos számjegy (1, 1, 1, . . . vagy 0, 0 . . .) követi majd egymást, a feszültségszint az adási pillanatok közötti szünetben is megmarad (25a ábra). Dinamikus módszer. A számjegyeket meghatározott hosszúságú villamos impulzusokkal ábrázoljuk. Meghatározott időpillanatban a pozitív impulzus 10 2
jelenléte az egységnek, a pozitív impulzus hiánya, vagy a negatív impulzus jelenléte pedig a nullának felelhet meg. Ha több egyes követi egymást, a feszültség a számjegy adásának pilla natai között a nulla szintig csökken (25b ábra). 13.1. E lektroncsövek. Az elektroncsövek csak egy irányban vezethetnek áramot. Az elektroncsövek olyan nembneáris elemek, amelyek a gépekben lehetővé teszik a bináris számjegyek előállításához szükséges különböző feszültségszintek kialakítását. Legegyszerűbb elektroncső a dióda (26a ábra). A diódának két elektródja van: anód és katód. A nagy hőmérsékletre izzított katód elektronokat bocsát ki, vagyis termo-elektronemissziónak van alávetve.
26. ábra. Dióda
27. ábra. Trióda és rács-karakterisztikája
Amennyiben az anódra pozitív, a katódra pedig negatív potenciált kap csolunk, az elektronok a katódról az anód irányában mozognak, azaz a diódán az anódról a katódra villamos áram halad át (26b ábra). Ha a pozitív poten ciált a katódra, a negatívot pedig az anódra kapcsoljuk, a diódán át nem folyik áram. Az első esetben a C kimenő kapcson az anódfeszültséghez közel álló nagyfeszültség jelenik meg (ugyanis a dióda belső ellenállása vezető állapotban lényegesen kisebb, mint az R terhelő ellenállás). A második esetben a C kap cson a feszültség kicsi marad, minthogy a dióda nem vezet. Diódacsöveknél a diódán átfolyó áram és a kimenő jel polaritásának vezérlése a rákapcsolt feszültség polaritásának változtatásával valósítható meg. A trióda olyan elektroncső, amelynél az anód és a katód között még egy harmadik elektróda, a vezérlőrács helyezkedik el (27a ábra). A vezérlőrács a triódán átfolyó áramnak az anód és a katód között alkalmazott feszültség változása nélküli vezérlésére szolgál. Ha a trióda rácsára negatív feszültséget (—Ug előfeszítést) kapcsolunk, a trióda árama csökken, és az előfeszítés meghatározott értékénél, a csövön át folyó áram teljesen megszakad, a cső „lezárt” állapotba kerül. Ugyanakkor, ha a rácsra pozitív feszültséget (előfeszítést) adunk, a csövön átfolyó áram növekszik, és az előfeszítés meghatározott értékénél maximumot ér el. A csö vön átfolyó anódáram legnagyobb 7amax értékének az az állapot felel meg, amikor a katód által kibocsátott majd minden elektron az anódra jut (a rácsra jutó elektronrész alkotja az ún. rácsáramot). A 27b ábra a trióda jellegzetes rácskarakterisztikáját tünteti fel. A jelleg görbének közel lineáris szakasza és két nemlineáris szakasza van: a felső és alsó 103
könyök. Minthogy a digitális gépekben a bináris számok előállítására csak két feszültségszint szükséges, a cső rácskarakterisztikáján a lehetőséghez képest egymástól távol, a lineáris szakaszon túl levő két pontot használunk fel. Ily módon a digitális gépekben az elektroncsövek két élesen különböző állapotban vannak: vagy teljesen lezártak, vagy teljesen nyitottak. Ennek következtében az áramkör üzeme során az üzemeltetés alatt a csőparaméterek változása nem befolyásolja lényegesen a viszonyokat. Az elektronikus digitális gépekben széleskörűen használják az öt elektró dás csöveket, a pentódákat is. A pentóda három rácsa közül egy rács magának a pentódának rendes üzemét biztosítja, a másik két rács vezérlés céljára hasz nálható fel. Szükség esetén a pentóda mindhárom rácsa vezérlésre használható. A pentóda lezárt állapotban lesz, ha a két vezérlőrácsa közül legalább az egyikre megfelelő negatív előfeszítést adunk. 13.2. F élvezető diódák és triódák. Az elektronikus digitális gépekben jelenleg az elektroncsöveken kívül széleskörűen felhasználják a félvezető eleme ket: diódákat és triódákat. Sok esetben ezek az elemek teljesen helyettesítik az elektroncsöveket. Ismeretesek olyan számítógépek, amelyek teljesen félvezető elemekből készültek. A félvezető diódák az elektroncsövekhez hasonlóan egyenirányító tulajdonságúak, vagyis a villamos áramot csak egy irányban bocsátják át; azt mond juk, hogy a félvezető dióda vezető irányú ellenállása tört része a záró irányú ellenállásnak. Az elektronikus digitális gépekben a félvezető diódákat logikai áramkörök építésére használják. A tranzisztoroknak is nevezett félvezető triódák olyan háromelektródás készülékek, amelyek az elektroncsövekhez hasonlóan erősítő tulajdonságokat mutatnak. A félvezető készülékek legfontosabb előnye az elektroncsövekkel szem ben a kis méret, a kis energiafogyasztás, a nagy mechanikai szilárdság és élet tartam. Jelenleg a félvezető elemek hiányossága az, hogy az egyes elemek para métereiben lényeges szórás mutatkozik a karakterisztika időben nem stabilis, és a jelleggörbe függ a hőmérséklettől. A félvezető elemek az elektronikus digitális gépek igen—nem (bekap csolt—kikapcsolt) elven működő impulzusüzemű kapcsoló áramköreiben igen hatásosan alkalmazhatók, minthogy itt velük szemben, az üzemi stabilitás tekintetében nem kell nagy követelményeket támasztani. Ma a germániumfélvezető elemek alkalmazása a legelterjedtebb. Számos tulajdonság szem pontjából előnyösebb sziliciumelemek kidolgozása és bevezetése folyamat ban van. A félvezetők vezetésének jellegéről bizonyos elemi ismeretekre van szük ségünk, hogy a félvezető diódák, de különösen a triódák működését megért hessük. Mint tudjuk, az anyagok három csoportra oszthatók: vezetők, félveze tők és szigetelők. A vezetőkben (ide tartoznak a fémek és azok ötvözetei) a villamos áram vezetését az anyag atomjai közötti elektrongáz, vagyis a szabad elektronok jelenléte biztosítja. Ezek az elektronok atomjaiktól könnyen eltávolíthatók, és az alkalmazott villamos tér hatására meghatározott irányban könnyen elmoz dulnak. 104
A szigetelőkben valamennyi atom szorosan kapcsolódik elektronjaihoz, szabad elektronjaik nincsenek, és villamos áram nem tud rajtuk keresztül* folyni. A félvezetők a vezetők és a szigetelők között közbenső helyzetet foglal nak el. A félvezetőkben kétféle áram vezetés létezik: elektron- és lyukvezetés. Az elektron vezetés, a félvezetőkben ugyanúgy, mint a fémeknél az elektronok mozgásának következménye, azonban ezek nem szabad elektronok (mint a fémeknél), hanem atomjaiktól leszakított elektronok. Amikor az elektronok az atomtól leszakadnak, az atomban üres hely, ,,lyuk” keletkezik, amelyet elektron nem tölt ki, és pozitív töltése van; erre a helyre a szomszéd atom elektronja átcsúszhat, ilyenkor az adott atomban a lyuk eltűnik, megjelenik azonban a szomszédos atomban. Az új lyukba ismét más atomból kerülhet elektron és így tovább. Ezek szerint a lyuk a pozitív töltés hely változtatási irányának megfelelően mozoghat az elektromos tér hatására. Tiszta félvezetőkben a keletkező lyukak száma azonos az atomoktól el szakított elektronok számával, vagyis az elektron- és a lyukvezetés azonos. Félvezető diódák és triódák építésére nem tiszta félvezetőket (germániumot vagy szilíciumot), hanem adalékokkal kevert félvezetőket alkalmaz nak. Az adalékanyag alkalmazása következtében a félvezető az egyik vezetési módot, az elektron- vagy lyukvezetést előnyben részesíti. Az elektron vezetés elfogadott elnevezései n-típusú vezetés. Az adalékanyag pedig, amely ezt a vezetést eredményezi, a donor. A lyukvezetést p-tipusú vezetésnek, a megfelelő adalékanyagot akceptornak nevezzük. A germánium és szilícium négyvalenciás elem, vagyis atomjaik rendes állapotban a külső héjon négy elektront tartalmaznak. Ekkor az atomok villa mossági szempontból semlegesek. Adalékanyag hiánya esetén a germánium és a szilícium olyan kristályrácsot alkot, amelyben minden atom négy valencia elektron segítségével a négy szomszédos atommal áll kapcsolatban, minden kötés egy elektront igényel. Ha az atomok kristályrácsába más számú valenciaelektront tartalmazó adalékanyagot viszünk be, a kristályrács-szerkezet és az atomok semlegessége közötti kapcsolat felbomlik. Ha a germániumhoz például az öt valenciaelektronos arzént adjuk, akkor az arzén atom egyik elektronja nem vesz részt a kris tályrács kialakításában, és ebből a szempontból felesleges. Annak érdekében, hogy a közös kristályrács-szerkezet megmaradjon, az arzénatomoknak egy valenciaelektronjukat le kell adniuk, jóllehet ez villamossági szempontból az arzénatomok semleges jellegének elvesztését jelenti. Ezek a felesleges elektro nok okozzák a félvezetőben az elektron vezetés túlsúlyát. Ugyanakkor, ha a germániumba adalékképpen három valenciaelektronos elemet, például indium atomot viszünk be, akkor az adalékanyag atomjainál az adott típusú kristályrács-szerkezet kialakítására, vagyis a négy szomszédos atommal való összeköttetés biztosítására egy-egy valenciaelektron hiányozni fog. Az adalékanyag minden atomjában lyuk keletkezik, és a félvezetőben a lyukvezetés kerül túlsúlyba. Ily módon megfelelő adalékanyag bevitele útján az n-, illetve p -típusú vezetést mutató félvezetőket kaphatunk. A félvezető diódákat és triódákat egy elemen belül több, különböző veze tési jellegű félvezető réteg összeállításával alakítjuk ki. Az egyesítés oly módon történik, hogy az említett rétegek között elektron—lyuk átmenet (vagy 105
n —p átmenet) alakul ki. A 28a ábrán az elektron—lyuk átmenet, a 28b ábrán pedig ennek a félvezető dióda kapcsolásokban alkalmazott jelölését tün tettük fel. A félvezető diódákban egy elektron—lyuk átmenetre, a félvezető trió dákban két elektron—lyuk átmenetre van szükség. Kifejlesztés alatt vannak több elektron—lyuk átmenettel ellátott félvezető készülékek. Az elektron— lyuk átmenet egyirányú vezetési tulaj donságot mutat, ez okozza a félvezető diódákban azok egyenirányító hatását. Az elektron—lyuk átmenet például »-típusú (vagyis például arzénadaléka nyagot tartalmazó) germániumnak indium-cseppel való ötvözése útján alakít ható ki. Az indiumhoz közel olyan germániumréteg alakul ki, amely p-típusú vezetést szolgáltat, a germánium többi 28. ábra. F élvezető dióda része megőrzi »-típusú vezetését. A két ta r tomány között alakul ki az n —p átmenet, így kapjuk az úgynevezett réteg-diódákat és triódákat. Ezenkívül léteznek még tűs diódák és triódák is, amelyeknél a germánium kristály és a vékony fémvezető között tűs érintkezést használnak. A germániumkristály vezetőképessége egy jellegű, és felületén a huzallal való érintkezés helyén más típusú vezetést mutató rész keletkezik. Az n —p átmenet egyirányú vezetése ennek az átmenetnek a határán a kettős villamos réteg megjelenésének következménye. Minthogy a p tartományban lyukfelesleg (vagyis elektronhiány), az »tartományban pedig elektronfölösleg van, diffúzió következtében az n —p át meneten keresztül még külső villamos tér hiányában is (az n tartományból a p tartományba) elektronmozgás és (a p tartományból az n tartományba) lyuk mozgás történik. Ez a mozgás az » tartományban pozitív töltés, a p tarto mányban negatív töltés kialakulásához vezet. Az ennek során keletkező villamos tér potenciálgátat képez, ami az elektronok és lyukak további diffúzióját megakadályozza. A potenciálgát nagy ságát egyrészt a diffúziót okozó adalékanyag koncentrációja, másrészt pedig az n és p tartományban a kettős villamos réteg megjelenését előidéző töltött részecskék mennyisége és energiája határozza meg. Világos, hogy a diódán á t folyó villamos áram az alkalmazott feszültség polaritásától függően különböző lesz. Amennyiben az áramforrás pozitív sarkát a p tartományra, a negatív sarkát pedig az » tartományra kapcsoljuk, a határfelületen a szabadelektronok és lyukak rekombinációja végbemegy, az átmenet ellenállása lecsökken, és jelentős áram keletkezik. Ha az áramforrás sarkait fordított értelemben kap csoljuk rá, az áram következtében az » tartomány határán a szabad elektronok, a p tartomány határán pedig a szabad lyukak száma még nagyobb lesz, a. potenciálgát megnövekszik, és a villamos áram áthaladása megnehezül. Ily módon a félvezető dióda az egyik áramirányt előnyben részesíti, vagyis egyenirányító tulajdonságot mutat. A vezető (kis ellenállású) irány a p tartományból az n tartományba, a záró (nagy ellenállású) irány az n tarto mányból a p tartományba mutató áramiránynak felel meg. Az elektroncsövek kel való analógia alapján a félvezető diódában a p tartományt anódnak, az n tartományt katódnak nevezhetjük. 106
Vizsgáljuk meg a félvezető trióda vagy tranzisztor működési elveit. A tranzisztornak három elektródája van: az emitter (E ), a kollektor (K ) és a bázis (В ). A 29. ábrán a tranzisztornak az eredeti kapcsolásokban hasz nált jelölését tüntetjük fel. Ezt a jelölést gyakran az elektródákat körülvevő kör nélkül adjuk meg. A bázis a bemenő elektróda; az emitter és a bázis közé kapcsoljuk a be' menő jelet. A kollektor a kimenő elektróda; a kimenő jelet a kollektor és a bázis között vesszük le. A tranzisztor alapja olyan germániumkristály, amelyben a bevitt adalék anyag miatt a kristályrács olyan szerkezetű, hogy a valenciaelektronok feles lege lép fel, amely a félvezetőnek elektronos vezetést biz tosít (и-típusú vezetés). Az emitternek és a kollektornak a germániumkristállyal való érintkezési helyein másfajta adalékanyag bevi telével olyan kristályrács-szerkezetet hozunk létre, amely ben valenciaelektron-hiány keletkezik, vagyis pozitív 29. ábra. töltésű lyukak alakulnak ki. Ezek a szakaszok lyukve T ranzisztor zetést vagy p-típusú vezetést mutatnak. Lyukvezetés alkalmával az áram áthaladását a semleges atomokból az elektronoknak a szabad lyukakba való átugrálása biztosítja, ennek eredményeképpen a lyukak a szomszéd atomokban jelennek meg; ezután más elektronok ugranak át ezekbe a lyukakba és így tovább. Ily módon a lyukak az áram haladási irányában mozognak előre. Az n vezetésű és p vezetésű szakaszok érintkezési határán kettős villa mos réteg keletkezik, minthogy a diffúzió következtében a lyukak egy része a p tartományból az n tartományba, az elektronok egy része pedig az n tartományból a p tartományba megy át. Em iatt a p tartományban a pozitív töltések hiánya, az n tartományban pedig azok feleslege áll elő. Ez a kettős, villamos réteg a lyukaknak a p tartományból az n tartományba, az elektronok nak pedig az n tartományból a p tartomány ba való további átmenetét megakadályozza, vagyis egyirányú vezetést mutat. A 30. ábrán a tranzisztor üzemi elvé nek szemléltetésére a tranzisztor egyik lehet séges kapcsolását tüntetjük fel. A bázis és az emitter közé kisfeszültségű (2V nagyságrendű) fatelep van kapcsolva. Az Ej telep polaritását úgy választottuk meg, hogy az emitterből (p tartomány) a lyukak átmenetét a germánium3 0 . ábra. A tranzisztor kapcsolási kristályba (n tartomány) és az elektronok vázlata átmenetét a germániumból az emitterbe le hetővé tegye, vagyis a telep a vezetési irány ba van kapcsolva, amelyre nézve az emitterből a bázisra mutató átmenet (p—n átmenet) kis ellenállású. Az Uj teleppel szorosan kapcsolódik a változó vezérlő feszültség jele, amelyet erősítenünk kell (Ube). A nagyfeszültségű (néhányszor 10 V-os) E2 telepet oly módon kapcsoljuk a kollektor és a bázis közé, hogy polaritása a kollektorból a bázis felé mutató vezetési iránnyal ellentétes legyen, vagyis az n —p átmenet nagy ellenállást 107
k é p v i s e l j e n . A z R t t e r h e l ő e l l e n á l l á s , a m e l y r ő l a z e r ő s í t e t t j e l e t le v e s s z ü k , a z E., t e l e p p e l s z o r o s a n k a p c s o l ó d i k .
Az Ег és E 2 telepek előbb említett polaritásuk bekapcsolásakor az emitterből a kristályba emittált nagyszámú lyuk nemcsak a bázis felé, hanem jelentős részben a kollektor felé is mozog. A lyukaknak a kollektorba való becsapódása erősíti a kollektor és bázis közötti külső áramkörben folyó I k ára mot. Ez az áram hozza létre az R t ellenálláson a kimenő jelként felhasznált feszültségesést. A bemenő feszültség változtatásával változtathatjuk meg az I e emitteráramot, ami viszont az emitterből emittált lyukak számát befolyásolja, és így vezérelhetjük a kollektoráram és vele együtt a kimenő jel nagyságát. Az elektroncsövekhez hasonlóan a tranzisztorban az egyes elektródák a következő szerepet játsszák: az emitter a katódnak, a kollektor az anódnak, a bázis pedig a vezéríőrácsnak felel meg. Meg kell jegyeznünk, hogy az áram vezetése itt fordított értelmű; az elektroncsövekkel ellentétben, ahol a katódról az anódra elektronok mozognak, a tranzisztorban az emitterből a kollektorba lyukak vándorolnak. Kapcsoló áramkörökben a félvezető triódákra két üzemállapot jellemző: a teljes lezárás állapota, amikor a kollektoráram zérus és a telítési állapot, amikor a kollektoráram a keletkező elektronok és lyukak mennyiségével meg határozott legnagyobb értékét éri el. A telítési üzemállapotig az emitteráram növelése a kollektoráram növekedését vonja maga után. Telítéskor az emitter áram további növelése nem váltja ki a kollektoráram növekedését. Az elektronikus digitális gépek technikájában jelenleg a tűs és réteg félvezető elemeket széleskörűen alkalmazzák. A tűs triódák frekvencia-jelleg görbéi eléggé nagyok. 1 MHz-et meghaladó frekvenciák esetében is üzemeltet hetők, azonban stabilitásuk és megbízhatóságuk nem kielégítő. A rétegtriódák karakterisztikái stabilisabbak, és megbízhatóbb elemek, mint a tűs triódák, azonban frekvenciatartományuk kisebb. A rétegtriódák olyan kapcsolások ban üzemeltethetők, amelyeknek impulzusfrekvenciája legfeljebb néhány száz kHz. Minthogy az elektronikus digitális gépek megbízhatóságának biztosítá sára az elemek üzemének stabilitási és megbízhatósági követelményei a dön tők, ez idő szerint a rétegtriódák gyakorlati jelentősége és felhasználása a legnagyobb. A triódák korlátozott frekvenciakarakterisztikája azonban nem teszi lehetővé felhasználásukat nagy sebességű (másodpercenként néhány ezer műveletet végző) gépek építésénél. Az úgynevezett felületi réteggel ellátott triódák nagyfrekvenciás jelleggörbéjűek (néhány tíz MHz). Ezeket a triódákat w-típusú vezetést mutató germániumlapból készítik. Erre a lapkára elektrokémiai úton, egymástól 5 mikron nagyságrendű távolságban elhelyezkedő, két kis mélyedést marnak; a mélyedésekbe indiumcseppet adnak. Az indium közvetlen közelben p-típusú vezetést mutató tartomány alakul ki. Ily módon a germánium és az indiumcsepp között két p —n átmenet keletkezik, a trióda p —n —p típusú. A nagyfrekvenciás sajátosságokon és a nagyfokú üzemi stabilitáson kívül a felületi réteggel ellátott triódák igen gazdaságosak; igényük néhány század watt. Az utóbbi időben megkezdték még az úgynevezett diffúziós félvezető triódákat gyártani, amelyek igen kiváló nagyfrekvenciás jelleggörbéjűek, és üzemi stabilitásuk is nagyfokú. 108
13.3. Mágneses vasmagok. Az elektronikus digitális gépekben ma a mágneses, ferrites vasmagokat széles körben alkalmazzák. Ezeket a vasmago kat először az üzemi memóriaegység kialakítására használták fel, de az utóbbi években erősen kezdik alkalmazni elektroncsövekkel és félvezető diódákkal, valamint triódákkal együtt logikai átkapcsoló és számoló áram körökben is. A ferritek mágneses tulajdonságú félvezető anyagok. A ferriteket úgy állítják elő, hogy különböző fémek (magnézium, mangán, nikkel stb.) oxidjait mágneses vassal ötvözik. A ferritek nagy villamos ellenállása következtében átmágnesezésük során a Foucault-á,ram ok kelet kezésekor fellépő veszteség jelentéktelen és így energiafogyasztásuk nem jelentős. A mágneses ferrit-vasmagok négyszög ke resztmetszetű kis gyűrűk (torroidok). Átmérőjük tizedmilliméterektől néhány milliméterig terjed. Minél kisebb a vasmag, minél vékonyabb a falvastagságuk, annál nagyobb a megengedhető üzemi frekvencia, viszont annál jobban csökken a vasmagról levezető jel. A vasmagokon több, vé konyhuzalból készült tekercselés foglal helyet. Az elektronikus digitális gépekben használt 31. ábra. Mágneses vasmag ferritmagoknak négyszögletes hiszterézis hurkuk idealizált hiszterézis hurka van. A hiszterézis hurok a tekercsben folyó áram nagysága (vagy a H mágneses térerősség) és a vasmag В mágneses indukciója közötti összefüggést megadó görbe. A 31. ábrán a mágneses vasmag idealizált hiszterézis hurkát tüntettük fel. Az ábra bemutatja, hogy a vasmagnak két stabil állapota van, azaz képes bináris szám memorizálására. Megállapodhatunk például abban, hogy a rema nens mágnesség pozitív állapota ( -\-Br) az egység memorizálásának, a negatív (—Br) pedig a nulla memorizálásának felel meg. Elég, ha tekercselésére a szük séges mágneses teret létrehozó áramimpulzust adjuk ahhoz, hogy a vasmagot egyik vagy másik állapotba hozzuk. A vasmag állapotának ellenőrzését, vala mint a beírt információ kiolvasását megfelelő nagyságú és hosszúságú negatív impulzussal (—H m) végezzük. Amennyiben a vasmag 0 állapotban van, átmágnesezés nem következik be, és negatív mágneses indukciója csak kismértékben (ABn nagysággal) növekszik meg, a kimenő tekercselésen jelentéktelen, zajnak minősülő impulzus jelenik meg. Amennyiben a vasmag 1 állapotban van, a vas mag teljes átmágnesezése következik be, mágneses indukciója ABS értékkel megváltozik, és a kimenő tekercsen jelentős jelként szolgáló impulzus jelenik meg. Minél jobban ,.derékszögű” a hiszterézis hurok, annál nagyobb az egység kiolvasásakor fellépő jel nagyságának és a nulla kiolvasásakor fellépő zaj nagy ságának a vasmag minőségére jellemző viszonyszáma. A jelenlegi vasmagoknál ez a viszonyszám 20—50, sőt ennél nagyobb értékek között ingadozik. A vas mag átmágnesezési ideje a vasmag méreteitől függően néhány tized psec-tól néhány /^sec-ig változik, ami megfelelően gyors működésű kapcsoló áramkörök és memóriaegységek kialakítását teszi lehetővé. A mágneses vasmagok értékes tulajdonsága a hőmérsékletváltozásokkal szemben mutatkozó érzéketlenség és az a képesség, hogy a beírt információt megbízhatóan hosszú ideig tárolják. 109
A mágneses vasmagok felhasználása logikai kapcsoló áramkörök kialakí tására azon alapszik, hogy bizonyos kapcsolásokban meghatározott jelek átvi telére képesek, és e jelek hatására állapotukat megváltoztatják. A 32. ábrán két mágneses vasmagnak — éspedig az M x vasmagról az M2 vasmagra — jelátvitelt biztosító legegyszerűbb (példaképpen szolgáló) kapcsolását szemléltetjük. Minden vasmagnak három tekercse van: egy bemenő, egy kimenő és egy szinkronozó tekercs. A szinkronozó tekercs arra szolgál, hogy az egyik vasmagról a másikra való jelátviteli folyamatot előidéző csúsztatóimpulzusokat kiadja.
32. ábra. K é t m ágneses vasm ag legegyszerűbb összekapcsolása
Legyen mindkét, M x és M2 vasmag a nulla állapotban. Ha az M x bemene tén pozitív im pulzust alkalmazunk, ez a vasm ag az 1 állapotba megy át, azon ban az M 2 vasm ag bemenetén impulzus nem jelenik meg, m inthogy a D í dióda olyan értelemben van kapcsolva, hogy az ekkor keletkező áramot ne bocsássa keresztül. Az M 2 vasm ag a 0 állapotban marad. Az M x vasm agot az 1 állapot ból a 0 állapotba átvivő szinkronizáló impulzus megjelenésekor az M x vasm ag kimenő tekercsén ellentétes irányú áram keletkezik, am ely az M г vasm ag bemenő tekercsére jut, és azt a 0 állapotból az 1 állapotba viszi át.
Ily módon a szinkronizáló impulzus az M x vasmagot az 1 állapotból a 0 állapotba, az M 2 vasmagot pedig a 0 állapotból az 1 állapotba viszi át, vagyis mintegy megvalósítja az egység átadását az M x vasmagról az M 2 vasmagra. A 0 állapotban levő vasmagra a szinkronizáló impulzusnak nincs befo lyása. A felsorolt tekercseken kívül a vasmagokon még ún. zárótekercset is szokás alkalmazni, amely a bemenőtekercshez képest ellentétes értelemben van csévélve. A zárótekercs semlegesíti a bemenőtekercs hatását; amennyiben a vasmag két tekercselésén egyidejűén jelenik meg jel, állapota nem változik meg. A vasmag ,,átbi 1lentűséhez” az szükséges, hogy a bemenőtekercsen jel jelenjék meg, de ugyanakkor a zárótekercsen ne legyen jel. A kapcsolásoknál (33. ábra) a mágneses vasmagokat általában körökkel ábrázoljuk; a tekercseket a kör felé (bemenőtekercsek) vagy a körtől kifelé mutató (kimenőtekercsek) nyíllal jelezzük. A bemenő nyilaknál a körön belül állanak a 0 és 1 számjegyek, amelyek arra utalnak, hogy milyen állapotba viszi át a be menő jel a vasmagot. A kimenő nyíl körül fel tüntetett számok azt mondják meg, milyen álla potba kell a vasmagot átbillentenünk annak 33. ábra. M ágneses vasm ag érdekében, hogy az adott kimenő tekercsen jel vázlatos ábrázolása jelentkezzen. 110
A zárótekercs jelölésére rendesen a vasm agot (teljes egészében vagy félig) átszelő folytonos vonal szolgál.
A kapcsolásokban a szinkronozó tekercseket általában nem tüntetjük fel, azokat oda kell gondolnunk. 14. Elektronikus kapcsolások a logikai alapműveletekre 14.1. Elektroncsövekből és félvezető diódákból kialakított logikai áram körök. Vizsgáljuk meg azokat a legegyszerűbb elektronikus kapcsolásokat, amelyek segítségével a gépekben a szükséges logikai alapműveleteket (negáció, és, vagy) megvalósíthatjuk. Az inverter kapcsolás, amely a negáció logikai műveletének (nem) megvalósítására szolgál, a 34. ábrán látható. A P kimeneten akkor jelenik meg nagy fe szültségszintű jel, amikor a C bemenetre nem adunk jelet. Ekkor a trióda rácsán kis feszültség van a trióda lezár és a P pont potenciálja a -f-C/potenciállal lesz azonos. Amikor a C bemenetre nagy feszültség szintűjelet adunk, a trióda nyit és az Ra ellenálláson fellépő feszültségesés következtében a P pont potenci álja leesik, vagyis a kimeneten a jel eltűnik. A 34. 34. ábra. Az im erter v á z ábrán az inverternek az üzemi kapcsolásokban alkal la ta és szokásos jelölése mazott jelölése látható. A koincidencia-kapcsolás az és logikai műveletet valósítja meg. Ez a kap csolás olyan többpólus, amely általános esetben több bemenetet és egy kime netet tartalmaz. A kapcsolás kimenetén jel akkor és csakis akkor jelenik meg, amikor valamennyi bemenetre egyidejűén adunk jelet, vagyis ez az áramkör a logikai szorzást valósítja meg. A 35. ábra koincidencia áramkörre tüntet fel példákat. (Két j el koincidencia-kapcsolását néha szelep-kapcsolásnak nevezzük.) A 35. ábrán diódás koincidencia-kapcsolás szerepel. A P kimeneten a jel abban az esetben lesz nagy feszültségszintű, ha mindkét dióda katódjára, vagy is az A és В pontokra nagy pozitív feszültséget adunk.
c,
d,
35. ábra. „ É s ” áram k ö r
Hacsak az A vagy В bemenetek egyikén is elmarad a pozitív nagy feszültségszintű jel, a megfelelő dióda vezetni fog és az R ellenálláson fellépő feszültségesés következtében a P pont potenciálja lecsökken. 111
A 35b ábrán pentódás koincidencia-kapcsolást mutatunk be. A pentódán keresztül csak akkor folyik áram, ha a pentóda mindkét vezérlőrácsán pozitív jel van. Az R ellenállás feszültségesése biztosítja a P kimeneten a nagy feszült ségszintű jel megjelenését. A 35c ábra négy (A, B, C, D) bemenetű egyenirányítós koincidencia áramkört mutat. A P kimeneten csak akkor jelenik meg nagy feszültségszintű jel, ha mind a négy (A, B, C, D) bemenetre pozitív jelet adunk. Ha csak egy bemeneten is hiányzik a pozitív jel, az R ellenálláson át áram folyik, és a P pont potenciálja leesik. A 35d ábrán a koincidencia-kapcsolásnak az üzemi áramkörökben alkal mazott jelölése látható.
36. ábra. „Vagy” áramkör
Az előző kapcsolások — mint azt könnyen láthatjuk — negatív jel alkal mazása esetén a vagy logikai művelet megvalósítására szolgálhatnak. A vagy műveletet pozitív jelek esetére előállító kapcsolásokat (vagy-áramköröket) tüntet fel a 36. ábra. Minden vagy-áramkörnek több bemenete és egy kimenete van. A P kimeneten csak akkor jelenik meg nagy feszültségszintű jel, ha legalább egy bemenetre jelet adunk, vagyis a logikai összegezés képletét állítja elő: P = A \ J B \ J C \ / D . A 36a ábrán diódás vagy-áramkört tüntettünk fel. Ha az A vagy В bemenetek akár csak egyikén pozitív jel van jelen, az R ellenálláson át áramot hoz létre, és a P kimeneten pozitív jel jelenik meg. A 36b ábra triódás, a 36c ábra. pedig egyenirányítós vagy-krarnkört. mutat. A 36d ábra a vagy-áramkör üzemi kapcsolásokban használt jelölését tünteti fel. Az elektronikus digitális gépek technikájában igen fontos szerepet já t szik a két stabil állapotú, úgynevezett trigger-kapcsolás. A trigger-kapcsolás (37. ábra) a leg egyszerűbb esetben két triódát tartalmaz, amelyek anódjai és rácsai között keresztcsa tolás, valamint közös előfeszítésük van. Ez olyan kapcsolást eredményez, amely mind addig a két stabil állapota egyikében van, ameddig ezt az állapotot külső jel meg nem változtatja. Ebben a kapcsolásban a V1 első trióda anódja az R i ellenálláson és a vele párhuza mosan kapcsolt CJ±kondenzátoron keresztül a 37. ábra. T rigger áram kör 112
második V2trióda rácsával, míg a második trióda anódj a az R- ellenálláson és a vele párhuzamosan kapcsolt C2kondenzátoron keresztül az első trióda rácsával van összekötve. .4 trióda áramának növelése az adott trióda anódjának poten ciálját és következésképpen a másik trióda rácsának feszültségét csökkenti. A Vx cső áramának emelkedése például az R l ellenállás feszültségesését növeli meg, ami a V2 rácsán a potenciált csökkenti. A V2 rácsán mutatkozó feszültségcsökkenés arányában ezen cső anódárama kisebb lesz, ami az R, ellen állás feszültségesését csökkenti, és a V2 cső anódjának potenciálját megemeli, Ennek következtében a Vx cső rácsának potenciálja nagyobb lesz, és az ezen a csövön áthaladó áram megnő stb. Ez a folyamat mindaddig folytatódik, amíg a F2 cső teljesen le nem zár, és a V1 csövön az áram el nem éri maximumát. Az áramkör felveszi stabil állapotát, amelyet az egyik anódon nagy feszültség, a másikon pedig kis feszültség jelenléte jellemez. A csövek anódjai kimenő kapcsolásra használhatók fel. Az A x pont például az eredeti kimenet, az A., pont pedig a komplementer kimenet lesz. A nyitott cső anódárama mind a saját anódellenállásán, mind a közös R 3 katódellenálláson feszültségesést okoz. A trigger üzemi stabilitása az ellenállások megválasztásától függ; telje sen lezárt cső esetében a cső katódjain a potenciál legyen a zárófeszültséggel meghatározott értéknek megfelelően nagyobb, mint a lezárt cső rácsának potenciálja. Ekkor a lezárt cső rácsán negatív előfeszültség van, amely a kap csolást a stabil állapotban tartja. Ha a kapcsolást a másik állapotba visszük át, akkor külső impulzust kell adnunk. A trigger-kapcsolásban a külső jelek szolgáltatásának több módszere létezik, a triggerek vezérlésére több eljárás van. A feltüntetett kapcsolás szerint például ugyanolyan polaritású bemenő impulzusokat adhatunk egy be menetre (a két cső katódjaira). Minden egyes új jel alkalmával a kapcsolás rend re egyik állapotából a másikba megy át, és a kettes modulus szerint megszámol ja az érkező impulzusokat. Ez esetben a kapcsolás egyetemes binárisszámláló. A triggerek vezérlésére más módszereket is alkalmaznak, amikor a vezér lő jeleket az áramkör két pontjára, például a csövek rácsára adjuk. Ekkor a beadott jel polaritásától függően a kapcsolás átmegy a másik állapotba vagy megmarad az eredeti állapotban. Ha például a vezető cső rácsára pozitív jelet adunk, a kapcsolás állapota nem változik meg. Ugyanakkor a negatív jel kiváltja a kapcsolás másik állapotba való átbillenését. Minden trigger-kapcsolás a bináris szám egy jegyének memorizálására szolgálhat. (Több (n ) trigger n-jegyű bináris szám memorizálását végezheti el, vagyis egy számra nézve regisztert (memóriaegységet) képez. Amennyiben több trigger-kapcsolást sorosan oly módon kapcsolunk össze, hogy az egyik trigger kimenetét a következő trigger bemenő jelének használjuk fel, a kapcsolás számláló berendezést, vagyis olyan kapcsolást ad, amely a legelső trigger-elem bemenetére sorozatosan beadott impulzusokat megszámolja. Minden trigger az adott pillanatban a számlálóban tárolt bináris szám meghatározott jegyének felel meg, és a triggerek közötti soros kapcsolat bizto sítja az elemek közötti átvitelt. Megjegyezzük, hogy a triggert a negáció logikai műveletét előállító kap csolásra is felhasználhatjuk. Ha az A mennyiséget képviselő jelet a trigger alap kimenetén vesszük le, akkor a trigger komplementer kimenetén mindig az Ä (A negált) jel jelenik meg. 8 K ito v — K rm yickij
113
14.2. Félvezető triódás logikai kapcsolások. A félvezető triódák ismer tetett tulajdonságai módot nyújtanak az elektronikus digitális gépek külön böző kapcsoló áramköreiben arra, hogy azokat elektroncsövek helyett használ juk fel (szelepek, triggerek, regiszterek, számlálók, stb.). A 38. ábra p —n —p típusú félvezető germániumtriódás inverter-kapcso lásra mutat be példát. Az inverter a negáció (nem) logikai műveletének elő állítására szolgál. Az inverter kimenetén a bemenetére adott jelhez képest ellentétes értelmű jel jelenik meg.
Üzemszerű állapotban, vagyis amikor bemenetén nem alkalmazunk jelet, a Tx trióda félig zárt állapotban van, azaz kis kollektoráram halad át rajta. Ekkor a bázis feszültsége 0, a kollektor feszültsége és vele együtt a kimenő jel pedig —5 V-ra áll be. A kimeneten ezt a feszültségértéket a Dx dióda segítségé vel tartjuk. Ha a bemenetre (a bázisra) —5 Y-os negatív impulzust adunk, a trióda teljesen kinyit és a kollektorfeszültség, valamint vele együtt a kimeneti jel feszültsége nullává válik. Az R x és Ii2 ellenállás a kapcsolás szükséges üzem állapotának beállítására szolgál. A 39. ábrán három félvezető trióda szoros kapcsolását szemléltetjük. A kapcsolásnak három bemenete van, és e három bemeneti változóra vonatkozó39
39. ábra. Három, felületi réteggel ellátott félvezető trióda soros kapcsolásának vázlata konjunkció logikai műveletét, az és műveletet valósítja meg. Legyen kiinduló állapotban mindhárom (Tv T2 és T 3) trióda bázisán a feszültség nulla. Ekkor mindhárom trióda zárt és a három sorbakapcsolt trióda I k kollektorárama igen kicsiny lesz. Ez esetben a kimeneti feszültség az áramforrás —2 V feszültségé hez közelálló lesz. Mindhárom trióda bázisára negatív feszültséget kell adnunk annak érde kében, hogy a kimeneten pozitív impulzus jelenjék meg. Ekkor mindhárom 1 14
trióda kinyit, és az R ellenálláson kollektoráram halad át, amelynek hatására ezen az ellenálláson fellépő feszültségesés adja a kimenet pozitív impulzusát. Ha a triódák egyikének bázisára nem adunk negatív feszültséget, ez a trióda zárva marad, kollektoráram nem folyik, vagyis a kimeneten nem jelenik meg jel. A 40. ábrán félvezető elemekből megépített három bemenetű tű vagyáramkört tüntettünk fel. A kapcsolást három párhuzamosan kötött trióda alkotja, és a diszjunkció logikai műveletét állítja elő.
40. ábra. F elületi réteges félvezető elem ekből m e g ép ített „ é s” áram k ö r
Amennyiben mindhárom trióda bázisán hiányzik a negatív feszültség, mindhárom trióda lezár, és a kimeneten nem jelenik meg pozitív impulzus. Ha csak egy trióda bázisára is negatív feszültséget adunk, ez a trióda kinyit, és a rajta átfolyó megfelelően nagy kollektoráram hatására az R ellenálláson feszültségesés lép fel, és az a kimeneten pozitív jel megjelenését okozza. A 41. ábrán félvezető triódás trigger-kapcsolást mutatunk be. A kapcsolás külső képe az elektroncsöves trigger áramkörére emlékeztet. Adott esetben a T1 és T2 triódák kollektorai és bázisai keresztben vannak összekapcsolva. Ez biztosítja a két stabil egyensúlyi ál lapotú áramkör kialakítását. Az áramkör üzemének megér tése céljából vegyük figyelembe elő ször azt, hogy a félvezető trióda lezár, ha bázisán a feszültség nulla, másodszor, hogy telített kollektor áramú üzem esetében a kollektor közelítően nulla feszültségű. Legyen a kezdeti időpillanat F elü le ti réteggel e llá to tt félvezető ban a Tx trióda lezárt állapotban, 41. ábra. trió d ák b ó l m e g é p íte tt trigger kollektorárama közel nulla, kollek torfeszültsége pedig közelítően az áramforrás —U negatív feszültsége lesz. Ugyanezt a negatív feszültséget kapjuk а Т.г trióda bázisán, aminek következtében ez a trióda teljesen kinyit. A T 2 triódán jelentős kollektoráram (telítési áram) halad át és az R2 ellenál láson fellépő feszültségesés következtében a T2 trióda kollektorán és vele együtt a Tx trióda bázisán a feszültség nullához közeli érték lesz, ami a rl \ trió dát lezárja. Az áramkör mindaddig ebben az állapotban marad, ameddig külső jel a másik stabil állapotba át nem billenti. 8*
115
A z á tb ille n tő je l k ia d h a tó p é ld á u l a Txtr ió d a k o lle k to r á r a p o z itív im p u l z u s f o r m á já b a n , a m i a Txtr ió d a k o lle k to r á n a k é s v e le e g y ü tt a T2 tr ió d a b á z i s á n a k f e s z ü lts é g é t n u llá r a f e le m e li. E n n e k s o r á n a T2 t r i ó d a k o lle k to r á r a m a k is e b b le s z , a m i a T x tr ió d a b á z is á n m é r h e tő f e s z ü lts é g e t c s ö k k e n ti, é s e m e tr ió d á t k in y itja . A Tx tr ió d a k o lle k to r á r a m á n a k n ö v e k e d é s e a z B x e lle n á llá s o n fe llé p ő fe s z ü lts é g e s é s k ö v e tk e z té b e n a T2 tr ió d a b á z is á n a k f e s z ü lts é g é t n u llá ig e m e li m e g , s e z o k o z z a e m e tr ió d a le z á r á s á t. I l y m ó d o n a k a p c s o lá s a m á s i k s ta b i l á ll a p o t b a b ille n á t T xt r i ó d a n y i t o t t , Тг tr ió d a le z á r t, é s te ts z ő le g e s e n h o s s z ú id e ig e b b e n a z á lla p o tb a n m a r a d . 14.3. M ágneses vasm agos logikai kapcsolások. F e r r i t v a s m a g o k b ó l k ü l ö n b ö z ő l o g i k a i m ű v e l e t e k e t m e g v a l ó s í t ó k a p c s o l á s o k é p í t h e t ő k . A 4 2 a á b rá n
a d i s z j u n k c i ó (va g y) l o g i k a i m ű v e l e t é t e l ő á l l í t ó k a p c s o l á s j e l k é p i j e l ö l é s é t á b r á z o l j u k , m a g a a z á r a m k ö r a 42b á b rá n s z e r e p e l . A z M x és M 2 v a s m a g o k k i m e n ő t e k e r c s e i a D x é s T)2 l e v á l a s z t ó d i ó d á k o n k e re s z tü l p á rh u z a m o s a n c s a tla k o z n a k a z M 3 v a s m a g b e m e n ő te k e rc s é re . A z A b e m e n e te n a lk a lm a z o tt je l a z M xv a s m a g o t, а В b e m e n e te n a lk a lm a z o tt je l a z M 2 v a s m a g o t b ille n ti á t a z 1 á lla p o tb a . A s z in k ro n o z ó im p u lz u s a z M x é s M 2 v a s m a g o k a t á tv is z i a 0 á lla p o tb a , é s e v a s m a g o k k im e n ő te k e rc s e in je le t h o z lé tre , a m e ly e g y ü tt v a g y k ü lö n a z М ъ v a s m a g o t a z 1 á lla p o tb a b ille n ti á t. A k ö v e tk e z ő s z in k ro n o z ó im p u lz u s s a l a z M 3 k e r ü l n u lla á lla p o tb a , é s a C k i m e n e te n je le t a d k i. A vagy á r a m k ö r e g y e t l e n v a s m a g s e g í t s é g é v e l m e g v a l ó s í t h a t ó , a m e n n y i b e n e z e n t ö b b k ie g é s z ítő t e k e r c s e l é s t h e ly e z ü n k e l. A 43. áb ra a k o n j u n k c i ó ( é s ) l o g i k a i m ű v e l e t é t e l ő á l l í t ó s z i m b o l i k u s k a p c s o lá s t t ü n t e t i fe l. A z М.л v a s m a g k i m e n e t é n c s a k a k k o r j e l e n i k m e g j e l , h a a z A é s В b e m e n e te k e n is ta lá lu n k je le t. A m e n n y ib e n p é ld á u l c s a k a z A b e m e n e te n lé p fe l
116
43. ábra. F e rr ite k b ö l k é sz ü lt „ é s ”
44. ábra. F e rr ite k b ő l k é sz ü lt
á ra m k ö r
d in a m ik u s trig g e r
i m p u l z u s , e z a z i m p u l z u s , m i n d k é t (M 1 é s M 2) v a s m a g o t a z 1 á l l a p o t b a b i l l e n t i á t (a z M 2 v a s m a g á tb ille n a z 1 á lla p o tb a , m in th o g y a le z á ró te k e rc s e lé s e n , а В b e m e n e te n n in c s e n je l). A s z in k ro n o z ó im p u lz u s a z M í é s M 2 v a s m a g o k a t a 0 á lla p o tb a v isz i á t, é s e n n e k k ö v e tk e z té b e n k im e n e tü k ö n je le t k a p u n k . M in th o g y a z M 2 v a s m a g je le a z M 3 v a s m a g z á ró te k e rc s é re ju t, a z u tó b b i v a s m a g b e m e n ő te k e rc s é re a d o tt je l n e m v o n ja m a g a u tá n e n n e k á tm á g n e s e z é s é t, é s a k ö v e tk e z ő s z in k ro n o z ó im p u lz u s a lk a lm á v a l a z M 3 v a s m a g k im e n e té n je l n e m je le n ik m e g . A m e n n y ib e n c s a k а В b e m e n e tre ju t je l, n y ilv á n v a ló , h o g y a z M 3 v a s m a g k im e n e té n is m é t n e m k a p u n k je le t. A 4 4 . á b ra a f e r r i t v a s m a g o s d i n a m i k u s t r i g g e r s z i m b o l i k u s k a p c s o l á s á t m u ta tja . A k o r á b b a n l e í r t e l e k t r o n c s ö v e s , a f é l v e z e t ő t r i ó d á s é s a sta tik u sn a k , n e v e z e t t t r i g g e r - á r a m k ö r t ő l e l t é r ő e n , a d in a m ik u s t r i g g e r n é l a k i m e n ő j e l n e m á lla n d ó s ta tik u s fe s z ü lts é g s z in t, h a n e m im p u lz u s o k e g y m á s u tá n ja . H a a tr ig g e r á lla p o ta a z 1 b e ír á s á n a k fe le l m e g , k im e n e té n im p u lz u s s o r o z a to t a d k i; u g y a n a k k o r , h a a tr ig g e r a 0 - n a k m e g fe le lő á lla p o tb a n v a n , a k im e n e té n im p u lz u s o k n e m je le n n e k m e g . M e g je g y e z z ü k , h o g y a z e le k tro n c s ö v e s d in a m ik u s n i g g e r e k n é l fe le a n n y i c s ő re v a n s z ü k s é g , m in t a s ta tik u s tr ig g e re k n é l. P é ld á n k d in a m ik u s trig g e re e s e té b e n a s z in k ro n o z ó te k e r c s e t n e m s z á m ít v a , e g y e tle n n é g y te k e rc s e lé s ű v a s m a g o t h a s z n á lu n k . A z e g y ik te k e rc s a z e g y s é g b e m e n e té n e k , a m á s ik p e d ig a n u lla b e m e n e té n e k (z á r ó te k e r c s ) te k e r c s e , a h a r m a d ik te k e r c s e lé s a v a s m a g n e g y e d ik , k im e n ő te k e r c s e lé s é r ő l v e tt v is s z a c s a to lá s te k e rc s e lé s e . A m e n n y ib e n a tr ig g e r t a z 1 á lla p o tb a k e ll h o z n u n k , a z e g y sé g b e m e n e té re a d u n k im p u lz u s t; h a v isz o n t a trig g e rt a 0 á lla p o tb a k ív á n ju k h o z n i, a z im p u lz u s t a n u lla b e m e n e tr e a d ju k . A z e ls ő e s e tb e n a t r i g g e r k i m e n e té n i m p u lz u s s o r o z a to t k a p u n k , a m á s o d ik e s e tb e n a trig g e r k im e n e té n im p u lz u s o k n e m je le n n e k m e g . A z e g y s é g b e m e n e té re a d o tt im p u lz u s a v a s m a g o t a z 1 á lla p o tb a b ille n ti á t. A s z in k ro n o z ó im p u lz u s a v a s m a g o t a 0 á lla p o tb a v is z i á t, é s a k im e n ő te k e r c s e n , v e le e g y ü tt p e d ig a v is s z a c s a to ló te k e r c s e n je le t h o z lé tr e . A v is s z a c s a to ló te k e r c s im p u lz u s a a v a s m a g o t is m é t a z 1 á lla p o tb a b ille n ti á t é s e lő k é s z íti a z t a k ö v e tk e z ő s z in k ro n o z ó im p u lz u s r a . A s z in k ro n o z ó im p u lz u s a v a s m a g o t a 0 á lla p o tb a v is z i á t, é s a k im e n e te n ú jb ó l im p u lz u s je le n ik m e g s tb . I ly m ó d o n a k a p c s o lá s k im e n e té n im p u lz u s s o ro z a t je le n ik m e g . A m e n n y ib e n a n u lla b e m e n e tre , a z a z a z á ró te k e rc s re a d u n k a v is s z a c s a to ló te k e r c s h a tá s á t s e m le g e s ítő im p u lz u s t, a v a s m a g á lla n d ó a n a n u lla á lla p o tb a n m a ra d , és a k im e n e te n im p u lz u s t n e m k a p u n k . I ly m ó d o n a trig g e r k é t k ü lö n b ö z ő s ta b ilis — (a z 1 k ó d n a k v a g y a 0 k ó d n a k m e g fe le lő ) — á lla p o to t r ö g z íth e t. A z e le k tro n c s ö v e k b ő l, a fé lv e z e tő d ió d á k b ó l é s tr ió d á k b ó l, v a la m in t a m á g n e s e s v a s m a g o k b ó l k ia la k íth a tó le g e g y s z e rű b b k a p c s o lá s o k p é ld á it v e t t ü k v iz s g á la t a lá . E z e k b ő l a z á r a m k ö r ö k b ő l a z e le k tr o n ik u s d ig itá lis g é p e k b e n h a s z n á lt b o n y o lu lta b b lo g ik a i é s s z á m o ló k a p c s o lá s o k a t á llíth a tju k ö ssz e . 15. K om binált elektronikus logikai kapcsolások
A s z á m ító é s v e z é rlő á ra m k ö rö k b e n a b o n y o lu lta b b lo g ik a i á ta la k ító k a t a z e lő b b ie k b e n v iz s g á lt e le m i á r a m k ö r ö k b ő l ( in v e r te r e k , k o in c id e n c ia - á r a m k ö rö k , tw /y -á ra m k ö rö k ) á llítju k ö ssze . 117
15.1. Kettős szelep. Kettős szelep a 45a. ábrán feltüntetett négy bemenetű és egy kimenetű többpólus. Az A és В jelű bemenetre jutnak azok a jelek, amelyeknek a P kimenetre el kell jutniuk. Attól függően, hogy melyik (S1vagy S2) vezérlő bemenetre adtunk vezérlő jelet, a P kimenetre vagy az A jelet, vagy а В jelet engedjük át. Amennyiben az bemenetre nagy feszültségszintű pozi tív vezérlő jelet, az S2 bemenetre pedig kis feszültségszintű jelet adunk, a P kimenetre az A jel jut el, míg а В jel és a d4 egyenirányító bemenetén nem jele-
45. ábra. K e ttő s szelep
nik meg, minthogy az R2 ellenállás lényegesen nagyobb a d2 dióda vezető irányú ellenállásánál, és így а В jelnek megfelelő majdnem teljes feszültségesés az R2 ellenállásra jut. Ha a vezérlő jelet az S2 bemenetre adjuk,akkor éppen ellenkezőleg, a kimenetre а В jel jut el és az A jelet az S2 sinen keresztül a d, egyenirányító levezeti. A d3 és dA egyenirányító arra szolgál, hogy kiküszöböl jük a kimeneten megjelenő jelek visszahatását az áramkör üzemére. A 45b ábrán koincidencia-áramkörből és vágy-áramkörből összeállított kettős szelep üzemi kapcsolását szemléltetjük. Az áramkör a következő logi kai kénlet alapján működik: (11.32) 15.2. Egyelemes átalakító (46a. ábra) kapcsolását inverter és kettős szelep egyesítéséből nyerhetjük.
46. ábra. E gyelem es á ta la k ító 1 18
Az A bemenetre adott jel vagy közvetlen formában, vagy invertált alak ban jut el a P kimenetre, attól függően, hogy a két vezérlő bemenet S: és S2 közül melyikre adtunk vezérlő jelet. Az egyelemes átalakító inverterből, koin cidencia- és mgí/-áramkörből összeállított üzemi kapcsolását a 46b ábrán tün tetjük fel. Az egyelemes átalakító üzemét a következő logikai képlet írja le: (11.33)
15.3. Irányítókapcsolás. A 47. ábrán olyan kapcsolást látunk, amely az A és В bemenetre adott pozitív jelek minden kombinációjának a P, Q, R. 8 kimenetek jeleinek egy és csakis egy kombinációját felelteti meg. Négy különböző bemeneti jel kombinációt kaphatunk (A = 0 és В = 0; A = 1 és В — 0; A = 0 és В = 1; A = 1 és В = 1), és mind ezen kombinációkra csak egy kime neten jelenik meg kimenő jel. Például az A = 0, В = 0 be menő jelkombináció esetére a V1 és Vs csövek lezárnak (minthogy ezen csövek rácsán a —Us bemenő fe szültség miatt nagy negatív feszült ség van). A V2 és V4 csövek ezzel szemben teljesen kinyitnak, és eme csövek anódjainak potenciálja ki csiny lesz. A d3, d6, d- és ds vezető egyenirányítókon keresztül áram fo lyik az L2, P.j és L4 sínről a V2 és V4 csövek kis potenciálon levő anódjához, míg az L1 sín, amely a dx és d2 diódák útján a Vj_ és F3 cső nagy potenciálon levő anódjával van öszszeköttetésben, szintén nagy poten ciálon lesz. Ily módon az A = 0, В — 0 bemeneti jelkombinációnak csakis a P kimeneten megjelenő jel felel meg. A vizsgált irányító kapcsolás blokkvázlatát a 47b áb rán tüntetjük fel. A bemenő jelek más kombinációira hasonló meggon 47. ábra. Választó áramkör dolás érvényes. Az irányító kapcsolás üzemét a következő logikai képletek írják le:
(11.34)
119
Bináris számokkal végzett műveletek végrehajtása során gyakran csúsz tatjuk a szám valamennyi jegyét meghatározott helyértékkel jobbra vagy balra. Bináris számok normalizálása alkalmával például a mantisszát balra csúsztatjuk (lásd 51. oldalt). Ugyanakkor a nagyságrendek kiegyenlítésekor a kisebb szám mantisszáját jobbra csúsztatjuk (lásd 82. oldalt). 15.4. Csúsztató áramkör. Négyjegyű bináris számok jobbra csúsztatá sára szolgáló csúsztató áramkört tüntet fel a 48. ábra. A csúsztatandó számo kat az A v A 2, A 3, A 4 bemenetekre adjuk. Attól függően, hogy a négy (S0, Sr, S2 és S3) vezérlő bemenet melyikére adunk nagy feszültségszintű vezérlő jelet,
a s z á m c s ú s z ta tá s n é lk ü l v a g y 1, 2 , ille tv e 3 h e ly é r té k k e l jo b b ra c s ú s z ta tv a je le n ik m e g . A bemutatott kapcsolásban a csúsztató teljesen egyenirányítókra épült. Ha az egyik vezérlő bemeneten nincs jel, az A v A 2, A , és A, bemenetekre adott nagy feszültségszintű jel a dx d16 egyenirányítók vezető irányú ellenállásánál nagyobb ellenállású Rx, . . ., P 16 ellenállásokon keresztül és a dx, d2, d3, dv . . ., C) Д В kifejezést kapunk, ami szintén eleget tesz az adott feltételnek. A két vizsgált változat a keresett kapcsolás valamennyi lehetséges üzemi állapotát felöleli. Eme kifejezések az A, B, G változók nyolc lehetséges kombinációja közül háromban igazak, amikor is három esetben szükségszerűen kettő és csakis két változó igaz (logikai értéke 1). Ily módon megkapjuk a kapcsolás üzemét leíró következő összefüggést: P = \(A ъ В ) Л С] V [(А ~ C ) Л £]•
(11.36)
E képlet ellenőrzését a 22. táblázat adja meg.
22.
TÁBLÁZAT
A kapcsolás üzemét leíró képlet ellenőrzése
.
„
I M egkívánt irtá k
A
В
C
0 0
0 о
0 i
0 о
0 1 0
1 0 1
0
0 0
1 1 1
0
1 1
l
0 1
0
1
1
1 0
1
A (II. 36) alapján k a p o tt érték
! !
0 о 0 0
1
1
1
1
0
A 21. táblázat nyolc összefüggését felhasználva alakítsuk át a (11.36) kifejezést: P = {[(А Л В) V (А Л В)] Л С} V {[(А Л С) V (А Д С)] д В}. A kapcsos és szögletes zárójeleket (a 20. táblázat 14. és 15. képletének felhasz nálásával) felbontva a következő kifejezést kapjuk: P = (А Д В Д G) V (Ä А В Д С) V (А Д В Д С) V {Ä /\ В д G). Minthogy a második és az utolsó tag azonos, az egyik elhagyható: P = (Ä Д В л С) V (А Д В Л С) V (А Д В Д C).
(11.37) 123
A (II. 37) összefüggésének megfelelő kapcsolás blokkvázlatát a 49a ábrán, elvi kapcsolását pedig a 49b ábrán tüntetjük fel. Eme áramkörök kialakításánál feltételezzük, hogy az elemi ítéletek negáltjai készen rendelkezésünkre állanak (például a triggerek komplementer kimenetén).
49. ábra. A (11.37) logikai kifejezés realizálása
16.2. Második példa. Vizsgáljuk meg most a következő feladatot meg oldó kapcsoló áramkör kialakítását: a kimeneten akkor jelenjék meg jel (1 érték), ha a három bemenet közül legalább két (tetszőleges) bemenetre jelet (1 érték) adunk. Ismét három (A, B, C) elemi változónk van, és olyan logikai összefüggést kell kialakítanunk, amely abban az esetben igaz, ha a három változó közül legalább kettő igaz. Világos, hogy ezt a követelményt — amennyiben jobbról még egy (А Л В A C) tagot hozzáfűzünk —, а (II. 37) kifejezés kielégíti, vagyis az összefüggés alakja: P = (А Л В л О) V (А Л В Л С) V (А Д В Д С) V (Ä Л В Д С).
(11.38)
Ez a kifejezés lényegesen leegyszerűsíthető. А 20. táblázat 20. képletének megfelelően a (11.38) jobb oldalához adjuk hozzá még kétszer az első tagot, csoportosítsuk a tagokat páronként, és végezzünk (logikai) összegezést: P = [(А Л В) Д (G V G)J V [(А д С) Л (-B V 5)] V 1(P А О) Д (А V A)]. A C \ J C , B \ / B , A \ J Ä kifejezéseket mint konjunkciós tagokat elhagy hatjuk. Végső eredményünk a következő: (11.39) Ezt a kifejezést általánosságban az adott feladat elemzéséből közvetlenül 124
könnyebben megkaphattuk volna, azonban a fenti levezetés a logikai kifeje zések átalakítási módjának szemléltetése szempontjából hasznos volt. A (11.29) kifejezésnek megfelelő kapcsolás blokkvázlatát az 50a ábrán, elvi kapcsolását pedig az 50b ábrán szemléltetjük.
50. ábra. A (11.39) logikai kifejezés realizálása
16.3. Harmadik példa. Vizsgáljunk meg a kapcsoló áramkörök építésére vonatkozóan még egy példát. Valamilyen bináris jelsorozat ellenőrzését kell megvalósítanunk, miközben olyan eset nem engedhető meg, amikor az egy séget nulla követi. Ily módon az engedélyezett sorozatok alakja a következő: A
B
C
0
1
D 1
1
E
F
1
G
1
H
1
1
0
0
0
0
0
1
1
1
0
0
0
1
1
1
1
1
0
0
0
0
0
0
0
0
Nem lesz megengedett például a következő sorozat: 00101111 . . .
Ily módon olyan kapcsolást kell kialakítanunk, amely a sor szomszédos tagjait az implikáció „akkor, ha” szabálya szerint páronként összehasonlítja: A-+B,
B^C,
C^D,
D-+E
stb.
Minthogy ezeket a feltételeket egyidejűén ki kell elégíteni, a kapcsolás üzemét leíró összefüggés a következő alakú: P = ( A ^ B ) ^ ( B ^ C ) M C ->D) ^
(11.40)
Alakítsuk át ezt a kifejezést a 21. táblázat 1. képletének felhasználásával: P = ( Ä \ / В ) М В У C) M C \J D) Л ...........
(П-41
Eme összefüggésnek megfelelő kapcsolás blokkvázlatát az 51a ábrán, elvi kapcsolását pedig az 51b ábrán mutatjuk be. 12Ő
5 1 . á b r a . А (1 1 .4 1 ) lo g ik a i k if e j e z é s r e a liz á lá s a
17. Az egyelemes bináris összegezek szintézise
17.1. Kétbemenetű, egyelemes bináris összegező. A kétbemenetű, egy elemes bináris összegező (félösszegező) két bináris számjegynek a 23. táblázat szerinti bináris összegezésére szolgál, ahol A és В az összeadandó bináris hely értékek, P az összegezés eredményének értéke az adott helyértéken és Q a szomszédos nagyobb helyértékre való átvitel értéke. Ha a 23. táblázatot a két változó valamennyi lehetséges logikai függvé nyét bemutató 17. táblázattal összevetjük, láthatjuk, hogy a P mennyiséget az ekvivalencia negációjának (jelölése: