Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Máté: Architektúrák1. előadás1 Számítógép architektúra (architecture) A felhasználónak látszódó gép: adattípusok, utasítások, szolgáltatások összessége.

Hasonló előadás


Az előadások a következő témára: "Máté: Architektúrák1. előadás1 Számítógép architektúra (architecture) A felhasználónak látszódó gép: adattípusok, utasítások, szolgáltatások összessége."— Előadás másolata:

1 Máté: Architektúrák1. előadás1 Számítógép architektúra (architecture) A felhasználónak látszódó gép: adattípusok, utasítások, szolgáltatások összessége. Számítógép-felépítés (organization): a közvetlenül nem szükséges részekkel is foglalkozik. Strukturált felépítés Számítógép - utasítás – programozás: gépi nyelv (kód). Bonyolultabb nyelvek: fordítás vagy értelmezés.

2 Máté: Architektúrák1. előadás2 n. szint L n nyelv, M n virtuális gép Az L n nyelvű programokat vagy az alsóbb szinten futó értelmező hajtja végre, vagy az alsóbb szinten futó fordítóprogram fordítja alsóbb szintre n-1.szint L n-1 nyelv, M n-1 virtuális gép... 0.szint L 0 nyelv,M 0 valódi gép Végrehajtja az L 0 szintű programot ábra

3 Máté: Architektúrák1. előadás3 Gépi, nyelvi szintek (1.2. ábra) 5.Probléma orientált nyelvi szint fordítás (fordító program) 4.Assembly nyelvi szint fordítás (assembler) 3.Operációs rendszer szint részben értelmezés (operációs rendszer) 2.Gépi utasítás szint ha van mikroprogram, akkor értelmezés 1.Mikroarhitektúra szint hardvare 0.Digitális logika szint

4 Máté: Architektúrák1. előadás4 Gépi, nyelvi szintek (1.2. ábra) 0: digitális logika szint: kapu (gate), AND, OR, …  1 bites,  több bites memória, regiszter 1: mikroarchitektúra szint: mikroutasítások, mikroprogram - nem minden gépen létezik, de a gépi utasítások végrehajtását gyakran mikroprogram végzi, ekkor ez a szint értelmezi a 2. szintet. Regiszterek, aritmetikai-logikai egység - ALU Adatfolyam - adatút 2: gépi utasítás szint (tényleges gépi utasítások): itt dől el a kompatibilitás kérdése.

5 Máté: Architektúrák1. előadás5 3: operációs rendszer szint: speciális kiegészítők (memóriakezelés, párhuzamos futtatás, …). Általában értelmezés. A szint utasításait –az operációs rendszer –vagy közvetlenül a 2. szint hajtja végre Az eddigi szintek programjai hosszú számsorozatok (természetesen ma már szimbolikusan készülnek) Eddig: rendszerprogramozók területe : assembly nyelvi szint (ezek tényleges nyelvek, fordítás), szimbolikus leírás (A2) 5: probléma orientált nyelvi szint: pascal, C, C++, …, adatbázis kezelők, …

6 Máté: Architektúrák1. előadás6 Gépi utasítás szint Az utasítások a memóriában vannak tárolva. addr)commanddest, source1, source2, next addr: az utasítást tartalmazó memóriarekesz címe command (utasítás): az utasítás kódja dest (cél): itt képződik az eredmény source1 (forrás1): a művelet 1. operandusa source2 (forrás2): a művelet 2. operandusa next: a következő végrehajtandó utasítás címe. Legtöbbször az utasítás utáni első rekesz címe, ezért általában nem kell megadni, csak akkor, ha más utasítással folytatódik a program (ugró utasítás).

7 Máté: Architektúrák1. előadás7 Gépi utasítás szint cím)adddest, souce1, source2 hatására dest fölveszi a source1 + source2 értéket. Ilyenkor természetesen elvész dest régi értéke. Sokszor egyszerűsítik az utasításokat, pl.: cím)addop1, op2 hatására op1 fölveszi az op1 + op2 értéket. További egyszerűsítés: cím)addop hatására A fölveszi az A + op értéket, ahol A egy kitüntetett regiszter (accumulator).

8 Máté: Architektúrák1. előadás8 Hardver, szoftver fejlődése Többszintű gépek kialakulása. Kezdetben két szint: –digitális logika, –utasítások. Mikroprogram (hardver bővítése programozással): Wilkes, Gyorsan elterjedt. Csúcs: hatvanas, hetvenes évek; nagyon sok új utasítás (*, /, …, ciklusszervezés, megszakítások) - később ezek az utasítások hardverrel is megvalósíthatókká váltak, és úgy gyorsabbak lettek - folyamatosan változó határok.

9 Máté: Architektúrák1. előadás9 Operációs rendszerek A hatvanas években készültek először: supervisor, rendszerhívások, kötegelt (batch) feldolgozás, közvetlen telefonos összeköttetés remote terminálok, időosztás (timesharing).

10 Máté: Architektúrák1. előadás10 Történelmi áttekintés (1.4. ábra) 0. generáció: Mechanikus gépek Pascal (1642): összeadás, kivonás (37+25=62)

11 Máté: Architektúrák1. előadás11 Számítógép architektúra (architecture) =19 Hova lett a 12?

12 Máté: Architektúrák1. előadás12 Leibniz (~1700): szorzás, osztás is *310 = 6510

13 Máté: Architektúrák1. előadás13 Babbage (1834): differencia gép (csak egy programja volt) – különböző táblázatok készítésére volt alkalmas. Összeadás, kivonás, ciklus. Kiírás fémlemezre (nyomtatás a fémlemezről). Babbage: analitikus gép (nem készült el). Programozható: utasítások lyukkártyáról Ada Augusta Lovelace. Egységek: memória (1000 db 50 jegyű szám), malom (+, -, *, /), input, output (lyukkártya). Zuse, 1936: elektromágneses relék használata. Aiken (1944): Babbage nyomán: jelfogós gépet készített (Mark I, később Mark II)

14 Máté: Architektúrák1. előadás14 1. generáció: elektroncső ( ). COLOSSUS (Turing, 1943): titkosírások megfejtése - 30 évre titkosítva. ENIAC (Electronic Numerical Integrator and Computer - Mauchley, Eckert, 1943): cső, 140 KW, 30 tonna, 20 darab 10 decimális jegyes regiszter. 10 cső egy decimális számjegyhez! Dugaszolással programozható ig nem sikerült befejezni. Nyári iskola - sok próbálkozás. EDSAC (Wilkes, Cambridge, 1949), EDVAC (1949) → UNISYS. Eckert és Mauchley sikertelenül próbálják találmánynak elfogadtatni.

15 Máté: Architektúrák1. előadás15 Neumann János megismerte az ENIAC-ot, és új gépet tervezett: bináris aritmetika, tárolt program ábra. Az eredeti Neumann-gép Memória Vezérlő egység Aritmetikai-logikai egység Akkumulátor Bemenet Kimenet

16 Máté: Architektúrák1. előadás16 Neumann János (1.5. ábra): vezérlő, aritmetikai-logikai egység, memória, input, output. EDSAC: 2-es számrendszer, 4096 szavas memória. 40 bites szavak: előjeles egész, vagy két utasítás. Tárolt program: 8 bites utasításkód, 12 bites cím. Akkumulátor. Nem volt lebegőpontos aritmetika! IBM 701 (1953) 2K 36 bites memória. Legnagyobb 1. generációs: IBM 709 (1958). Szegeden: M3 (1963).

17 Máté: Architektúrák1. előadás17 2. generáció: tranzisztor ( ). Tranzisztor feltalálása: 1948, Nobel díj: Első jelentős tranzisztoros gép: DEC PDP-1 (1961). Teljesítménye fele az IBM 7090-nek (az IBM 709 tranzisztoros változata): 4K 18 bites szó, 5  s ciklusidő, 512x512 display! Ára csak töredéke: US$. Több tucat eladott gép.

18 Máté: Architektúrák1. előadás18 Néhány évvel később: PDP-8: omnibusz (általános sín, 1.6. ábra) – US$, eladott gép ábra. A PDP-8 „omnibus” Magyarországon: KFKI, TPAi. IBM 7090, CPUMemóriaKezelő terminál Lyukszalag B/K Egyéb B/K Omnibus

19 Máté: Architektúrák1. előadás19 Első üzlet-orientált gép (1961): IBM 1401 byte-szervezésű memória. Burroughs B5000 (1963), Cél: hatékony ALGOL fordítót lehessen írni! Első szuper-gyors gép (1964): CDC 6600 (tervező: Seymour Cray). Párhuzamos működésre képes egységek, külön az összeadásra, szorzásra, osztásra. Párhuzamos utasítás-végrehajtás. Szegeden: MINSZK 22.

20 Máté: Architektúrák1. előadás20 3. generáció: integrált áramkör ( ). Robert Noyce (1958): szilícium alapú integrált áramkör IBM problémája: 7094 és 1401 nem kompatibilis. (1964): IBM 360-as sorozat (1.7 ábra). Később a szocialista országokban R-sorozat. Tulajdonság Model 30 Model 40 Model 50 Model 65 Relatív teljesítmény13,51021 Ciklus idő (ns) Maximális memória (KB) Cilusonként elérhető bájt12416 Adatcsatornák max. száma3346

21 Máté: Architektúrák1. előadás21 Emuláció: a sorozat gépein futtathatók az előző típusok programjai (mikroprogramozás). Multiprogramozás (DOS, POWER, OS). 24 bites címtartomány (16 Mbyte). A nyolcvanas évek közepéig elég, akkor áttérés a 32 bites címre. DEC: PDP-11 (1970): 16 bites Magyarországon: TPA70. Nem kompatibilis a PDP-11 -gyel Eddig csak számításigényes problémák -----

22 Máté: Architektúrák1. előadás22 4. generáció: VLSI (Very Large Scale Integration) (1980- ). Néhány millió elem egy lapkán (chipen). Személyi számítógépek. Kezdetben zacskóban: nyomtatott áramköri lap, IC-k, köztük általában INTEL 8080, kábelek, tápegység, hajlékony lemez CP/M operációsrendszer, Commodore, Apple, Spectrum-80. IBM PC (I-8088 alapú) a terveket publikálták - klónok. Microsoft: MS-DOS, OS/2, Windows. …

23 Máté: Architektúrák1. előadás23 Technológiai fejlődés Moore törvény (1965): Az egy lapkán elhelyezhető elemek száma másfél évenként duplázódik (1.8. ábra). Azt várják, hogy 2020-ig teljesülni fog. Minden más területen (lemezek, adatátvitel,...) hasonló sebességű a fejlődés. A szoftverek mérete, bonyolultsága is követi ezt: Nathan első törvénye: A szoftver gáz: kitölti a rendelkezésére álló teret.

24 Máté: Architektúrák1. előadás24 Technológiai fejlődés A népszerűsítő irodalom kedvenc hasonlata szerint, ha az autóipar az utóbbi hetven évben úgy haladt volna, mint a számítástechnika, egy Rolls-Royce-t 20 $-ért lehetne kapni, motorja gyufafej nagyságú lenne, sebessége km/h és egymillió kilométeren 3 liter benzint fogyasztana (Vámos Tibor)

25 Máté: Architektúrák1. előadás ábra. A mai (1999) számítógép típusok választéka TípusÁr (US $)Felhasználható például Eldobható1Üdvözlőlap Beépíthető10Órákba, autókba, … Játék100Videojátékokba Személyi számítógép1 000Asztali/hordozható Szerver10 000Hálózati szerver Munkaállomás hálózat Mini-szuperszámítógép Nagyszámítógép Banki nagygép Szuperszámítógép Időjárás előrejelzés

26 Máté: Architektúrák1. előadás26 Pentium II. (1.10, 11. ábra) LapkaDátumMHz1000TrMem.Megjegyzés I / Egy lapkás μProc. I / KB8 bites μProc. I /42664 KBÁltalános célú μProc. I / MB16 bites μProc. I / MBAz IBM PC pocesszora I / MBMemória védelem I / GB32 bites μProc. I / GB8 KB beépített gyorsító Pentium1993/ GBKét csővezeték, MMX P. Pro1995/ GBKét szintű gyorsító P. II1997/ GBPentium Pro + MMX

27 Máté: Architektúrák1. előadás27 UltraSPARC II Igény: UNIX-ot kisgépekre. Hálózati gépek: Ethernet. SUN (Stanford University Network ). Motorola CPU alapú gépek ben félmilliárd $ a bevételük. SPARC (Scalable Processor ARChitecture ). 32 bites, 36 MHz. Több cégnek átadták a gyártási jogot, verseny → gyors fejlődés! UltraSPARC I: 64 bites, multimédiás utasítások. UltraSPARC II, III: gyorsítás + kevés módosítás.

28 Máté: Architektúrák1. előadás28 picoJava II C, C++ nem eléggé védett! Java (kilencvenes évek közepe): objektum-orientált, biztonságos nyelv. Cél (SUN): bináris formátumú, WEB-ről letölthető programok, applet-ek. JVM (Java Virtual Machine): fordítók, értelmezők (Java-ról JVM-re, JVM-ről saját gépre). picoJava II: Java bináris programok végrehajtására szolgáló architektúra (terv – virtuális gép, de pl. a SUN microJava-701 lapkán megvalósították).

29 Máté: Architektúrák1. előadás29 Fixpontos számok Pl.: előjeles kétjegyű decimális számok : Ábrázolási tartomány: [-99, +99]. Pontosság (két „szomszédos” szám különbsége): 1. Maximális hiba: (az ábrázolási tartományba eső) tetszőleges valós szám, és a hozzá legközelebb lévő ábrázolható szám különbsége: 1/2. Számolási pontatlanságok: a = 70, b = 40, c = - 30 esetén a + (b + c) = 80, (a+b) + c = -20. túlcsordulás

30 Máté: Architektúrák1. előadás30 Helyértékes ábrázolás Pl.: 521,25 10 = 5 * * * * * Általában (q alapú számrendszer esetén): a n a n-1 …a 0,b 1 b 2 …b m = a n *q n +a n-1 *q n-1 + …+a 0 +b 1 *q -1 +b 2 *q -2 + …+b m *q -m 0  a i, b j  q Átszámolás számrendszerek között: egész rész: osztással, tört rész: szorzással.

31 Máté: Architektúrák1. előadás31 B: Bináris, O: Oktális, D: Decimális H: Hexadecimális BODHBODH A B C D E F

32 Máté: Architektúrák1. előadás32 Pl. 23, átszámítása kettes számrendszer-be. Egész rész: Tört rész: /2marad egész * , , = 10111, Véges tizedes tört nem biztos, hogy binárisan is véges!

33 Máté: Architektúrák1. előadás33 Példa bináris összeadásra: 1. összeadandó: (= 90) 2. összeadandó: (=124) Átvitel: Eredmény: (=214)

34 Máté: Architektúrák1. előadás34 Átszámítás 10-es számrendszerbe q alapú számrendszerből legegyszerűbben a Horner elrendezéssel alakíthatunk át: a n *q n +a n-1 *q n-1 + …+a 0 +b 1 *q -1 +b 2 *q -2 + …+b m *q -m = a 0 + q*(a 1 + q*( …+a n )) + (…(b m /q + b m-1 )/q + …+ b 1 )/q

35 Máté: Architektúrák1. előadás35 A számítógép kettes számrendszerben dolgozik, 10-es számrendszerből a Horner elrendezéssel alakítja át a számokat. A formulában a i –t, b j –t és q–t kettes számrendszerben kell megadni. Kettes számrendszerből 10-es számrendszerbe 10- zel való ismételt osztással állítja elő az egész részt, és 10-zel való ismételt szorzással állítja elő a tört részt – hasonlóan ahhoz, ahogy korábban bemutattuk a 10-es számrendszerből 2-esbe való átszámítást.

36 Máté: Architektúrák1. előadás36 Bit: egy bináris számjegy, vagy olyan áramkör, amely egy bináris számjegy ábrázolására alkalmas. Bájt (Byte): 8 bit, 8 bites szám. Előjeles fixpontok számok: 2 8 = 256 különböző 8 bites szám lehetséges. Melyek jelentsenek negatív értékeket? Előjeles számok szokásos ábrázolásai: előjeles abszolút érték, egyes komplemens, kettes komplemens, többletes.

37 Máté: Architektúrák1. előadás37 Előjeles abszolút érték: előjel és abszolút érték, az első bit (balról) az előjel: 0: +, 1: - Pl.: = , = Jellemzők: a nulla kétféleképpen ábrázolható, a legkisebb szám -127, a legnagyobb 127.

38 Máté: Architektúrák1. előadás38 Egyes komplemens: az első bit az előjel (0: pozitív, 1: negatív). Egy szám -1-szerese (negáltja) úgy kapható meg, hogy a szám minden bitjét negáljuk (ellenkezőjére változtatjuk). Pl.: = , = Jellemzők: a nulla kétféleképpen ábrázolható, a legkisebb szám -127, a legnagyobb 127.

39 Máté: Architektúrák1. előadás39 Kettes komplemens: az első bit az előjel (0: pozitív, 1: negatív). Egy pozitív szám negáltja úgy kapható meg, hogy az egyes komplemenshez egyet hozzáadunk. Pl.: = , = egyes komplemens, = kettes komplemens. Jellemzők: a nulla egyértelműen ábrázolható, a legkisebb szám -128, a legnagyobb 127.

40 Máté: Architektúrák1. előadás40 Többletes: a szám és a többlet összegét ábrázoljuk binárisan (ez már pozitív!). m bites szám esetén a többlet általában 2 m-1 vagy 2 m-1 – 1 Pl.: = , 128-többletes ábrázolás = =103 Jellemzők (128 többlet esetén): a nulla egyértelműen ábrázolható, a legkisebb szám -128, a legnagyobb 127. Megjegyzés: a 2 m-1 többletes ábrázolás azonos a kettes komplemenssel fordított előjellel. Használata: a lebegőpontos számok kitevő-részénél.

41 Máté: Architektúrák1. előadás41 BCD (Binary Coded Decimal) ábrázolás: minden decimális számjegyet négy biten ábrázolunk. Negatív számok BCD ábrázolása: 9 vagy 10 komplemens kóddal. Pl.: = , = (9 komplemens), = (10 komplemens).

42 Máté: Architektúrák1. előadás42 Lebegőpontos számok előjel karakterisztika törtrész Sok ekvivalens ábrázolási lehetőség, a leggyakrabban a törtrész első számjegye az adott szám első, nullától különböző számjegye (normalizált alak). Példa: 254 = 0,0254x10 4 = 0,254x10 3 (= 2,54x10 2 ). Megjegyzések: A nulla ábrázolásához külön megállapodásra van szükség (általában csupa nulla számjegyből áll). A lebegőpontos ábrázolásoknál is meghatározható a legkisebb és a legnagyobb ábrázolható szám, továbbá a legkisebb és legnagyobb hiba.

43 Máté: Architektúrák1. előadás43 Feladat: Ábrázoljuk nyolcas számrendszerben et: előjelbittel kezdve, a kitevő legyen 1 jegyű (3 bites), 4-többletes, a törtrész 4 jegyű. Megoldás: 254/8 6 31/87 3/ , normalizált alak: 0,376x8 3, a megoldás: = törtrész 4-többletes kitevő

44 Máté: Architektúrák1. előadás44 IEEE 754 standard single 32 bites, double 64 bites (, extended 80 bites). single: Ha 0 < a kitevőrész < 255, a szám normalizált. Normalizált tört vezető 1-es bitje nincs ábrázolva! típuselőjelkitevőrész| törtrész | single1 bit 8 bit 127-többletes 23 bit double1 bit 11 bit 1023-többletes 52 bit

45 Máté: Architektúrák1. előadás45 Normalizált számok (IEEE 754, single) 0 < kitevőrész < 255 kitevőrész = kitevő + 127, 127 többletes. Lehetséges kitevők:-126, -125,..., Közvetlenül a törtrész elé kell képzelni egy 1-est (implicit bit) és a bináris pontot. Az ábrázolt szám:  (1 + törtrész) * 2 kitevő Pl.: = 3F , = 3F , = BFC  kitevőrész 1. törtrész

46 Máté: Architektúrák1. előadás46 Normalizálatlan számok (IEEE 754, single) Ha a kitevőrész = 0 A bináris pontot 0 előzi meg (nincs ábrázolva). Az ábrázolt szám:  (törtrész) * Pl.: = * 0, = = = = * 0, = = = = * 1, =  = 007F FFFF 16  kitevőrész 0. törtrész

47 Máté: Architektúrák1. előadás47 Normalizálatlan számok (IEEE 754, single) Ha a kitevőrész = 255 Túl nagy számok (túlcsordulás):  (végtelen): pl. 1/0, NaN (Not a Number): pl.  / 

48 Máté: Architektúrák1. előadás48 Adattípusok Alapkérdés: mit támogat a hardver (milyen utasítások vannak)? Ami nincs (pl. dupla pontosságú egész aritmetika), azt szoftveresen kell megcsinálni. Numerikus típusok: előjel nélküli és előjeles egész számok (8, 16, 32, 64 bites). lebegőpontos számok (32, 64, néha 128 bites), binárisan kódolt decimális számok: decimális aritmetika (COBOL  Y2K = év probléma).

49 Máté: Architektúrák1. előadás49 Az egyes gépek által támogatott numerikus típusok P: Pentium II, U: UltraSPARC, J: JVM típus8 bit16 bit32 bit64 bit128 bit előjeles egész P U J U J előjel nélküli egész P U U BCD P lebegőpontos P U J U

50 Máté: Architektúrák1. előadás50 Karakterkódolás ASCII (American Standard Code for Information Interchanges), 7 bites: vezérlőkarakterek, az angol abc kis és nagy betűi, szimbólumok, ábra Latin-1 kód: 8 bites. IS 8859: kódlap, IS : magyar betűk is. UNICODE (IS – 2-33 ábra). 16 bites: kódpozíciók (code point). Általában egy nyelv jelei egymás után vannak – a rendezés könnyű. Kínai, japán, koreai: fonetikus szimbólumok, Han ideogramok (20992 jel, nincsenek szótár szerint rendezve).... Japán íráshoz kevés (> kanji jel van). Új jelek? Braille nincs benne.

51 Máté: Architektúrák1. előadás51 További nem numerikus típusok Logikai érték (boolean): igaz, hamis. Leggyakrabban egy bájtban (szóban) ábrázolják. Bit térkép. Mutató (pointer): Memória cím.

52 Máté: Architektúrák1. előadás52 Egyszerű sín alapú számítógép (2.1. ábra) vezérlőegység Aritmetikai- logikai egység (ALU) Regiszterek Központi memória Lemez Nyomtató B/K eszközök Központi feldolgozó egység (CPU) sín

53 Máté: Architektúrák1. előadás53 CPU feladata: a memóriában tárolt program végrehajtása. Részei: vezérlőegység, feladata: a program utasításainak beolvasása, az ALU, a regiszterek vezérlése, aritmetikai-logikai egység (ALU), feladata: az utasítások végrehajtása, regiszter készlet, feladata: részeredmények, vezérlő információk tárolása. A legfontosabbak: - utasításszámláló (Program Counter): PC, - utasításregiszter (Instruction Register): IR, adatút (data path, 2.2. ábra). vezérlőegység Aritmetikai- logikai egység (ALU) Regiszterek......

54 Máté: Architektúrák1. előadás54 Adatút (data path, 2.2. ábra). A regiszter készletből feltöltődik az ALU két bemenő regisztere ALU Az eredmény az ALU kimenő regiszterébe kerül Az ALU kimenő regiszteréből a kijelölt regiszterbe kerül az eredmény Nem biztos, hogy az ALU be- és kimenő regiszterei tényleges regiszterként vannak kialakítva. B A A+B AB ALU A+B

55 Máté: Architektúrák1. előadás55 CPU (Central Processor Unit) feladatai a végrehajtandó utasítás betöltése, a betöltött utasítás típusának megállapítása, az ezt követő utasítás címének megállapítása, ha kell, az operandus(ok) címének megállapítása, ha kell, az operandus(ok) betöltése, az utasítás végrehajtása, ha kell, az eredmény címének megállapítása, ha kell, az eredmény tárolása.

56 Máté: Architektúrák1. előadás56 Címzési módszerek Három cím: cél = forrás1 + forrás2. A memória sok rekeszt tartalmaz, de csak kevés regiszter van. Egy regiszter néhány bittel címezhető. Regiszterek használata rövidíti a címeket, de nyújtja a programot, ha az operandus csak egyszer kell. A legtöbb operandust többször használjuk. Implicit operandusok: Két cím: regiszter2 = regiszter2 + forrás1. Egy cím: akkumulátor = akkumulátor + forrás1. Nulla cím: verem, pl. az IJVM IADD utasítása.

57 Máté: Architektúrák1. előadás57 Utasítás típusok: regiszter-memória utasítások: a regiszterek és a memória közötti adatforgalom (betöltés, tárolás). Ilyenkor egy regiszter és egy memória cím megadása szükséges a címrészen. regiszter-regiszter utasítások: összeadás, kivonás, … Az eredmény is regiszterben keletkezik. Ilyenkor három regiszter megadása szükséges a címrészen. …

58 Máté: Architektúrák1. előadás58 Központi memória (2.9. ábra) A programok és adatok tárolására szolgál. Bit: a memória alapegysége, egy 0-t vagy 1-et tartalmazhat. Memória rekesz (cella): több bit együttese. Minden rekesz ugyanannyi bitből áll. Minden rekeszhez hozzá van rendelve egy szám, a rekesz címe. Egy rekeszre a címével hivatkozhatunk. A rekesz a legkisebb címezhető egység.

59 Máté: Architektúrák1. előadás59 Központi memória (2.9. ábra) n-1... CímRekesz/cella Rekesz hossza A rekesz hossza manapság legtöbbször 8 bit (byte ~ bájt). n a memória cellák száma

60 Máté: Architektúrák1. előadás60 A bitek száma rekeszenként néhány számítógép-történetileg érdekes, kereskedelmi forgalomba került gépen (2.10. ábra) SzámítógépBit Burroughs B17001 IBM PC8 DEC PDP-812 IBM DEC PDP-1118 XDS Electrologica X827 XDS Sigma 932 Honeywell CDC CDC Cyber60

61 Máté: Architektúrák1. előadás61 Kódolás: adat + ellenőrző bitek = kódszó. Két kódszó Hamming távolsága: az eltérő bitek száma. Pl.: és (Hamming) távolsága = 1. Hibaérzékelő kód: bármely két kódszó távolsága > 1: paritás bit. d hibás bit javítása: a kódszavak távolsága > 2d. Egy hibát javító kód (2.13. ábra): m adat, r ellenőrző bit, összesen n = m + r. 2 m „jó” szó, + minden „jó” szónak n db „egyhibás” szomszédja van, ezért (n +1)2 m  2 n = 2 m+ r, egyszerűsítve m + r +1  2 r, vagy másképp m + r  2 r szükséges.

62 Máté: Architektúrák1. előadás62 Bájtsorrend A legtöbb processzor több egymás utáni bájttal is tud dolgozni (szó – word, …). A legmagasabb helyértékű bájt a szóban a legalacsonyabb címen: legmagasabb címen: nagy (big) endian kis (little) endian MSBfirstLSBfirst Most/Least Significant Byte first Ha egy 32 bites szó bájtjainak értéke rendre: a, b, c, d, akkor a szó értéke: a* b* c*256+d a+b*256+c* d*256 3

63 Máté: Architektúrák1. előadás63 Bájtsorrend (2.11. ábra) a memória címek úgy vannak fölírva, hogy a legmagasabb helyértékű bájt van bal oldalon. CimNagy endian Kis endianCím bites szó

64 Máté: Architektúrák1. előadás64 Bájtsorrend (12. ábra) A szövegek karaktereit mindkét esetben növekvő bájt sorrendben helyezik el Címnagy endian 00T0T 1E1E 2X2X 3T3T kis endianCím 3T3T 2X2X 1E1E 0T0T A TEXT szöveg és az hexadecimális szám elhelyezése a két géptípuson Cím 00T0T 1E1E 2X2X 3T3T Problémák a gépek közötti kommunikációban!

65 Máté: Architektúrák1. előadás65 Feladatok Mi a különbség értelmezés és fordítás között? Milyen részei vannak egy négy műveletes zsebszámológépnek? Milyen részei lehetnek egy bonyolultabb műveletek elvégzésére is alkalmas zsebszámológépnek? Mi a Neumann elv? Valamikor 1 mikron átmérőjű volt a mikroprocesszor egy tranzisztora. Moore szabálya szerint mekkora volt az átmérője egy évvel később?

66 Máté: Architektúrák1. előadás66 Feladatok Konvertáljuk a következő számokat bináris számokká: 1984, 4000, 8192 Hány különböző pozitív egész szám fejezhető ki k számjegy segítségével r alapszám esetén? Hajtsuk végre a következő számítást 8 bites kettes komplemensű számokon: , , – , –

67 Máté: Architektúrák1. előadás67 Feladatok Konvertáljuk a következő számokat IEEE egyszeres pontosságúba. Az eredményt 8 jegyű hexadecimális számként adjuk meg: 9, 5/32, -5/32, 6,125. Konvertáljuk a következő egyszeres pontosságú IEEE lebegőpontos számokat decimális számokká: 42E48000H, 3F880000H, H, C7F00000H. Mikor fordul elő, hogy két lebegőpontos számon végrehajtott művelet eredményénél a szignifikáns bitek száma drasztikusan csökken.


Letölteni ppt "Máté: Architektúrák1. előadás1 Számítógép architektúra (architecture) A felhasználónak látszódó gép: adattípusok, utasítások, szolgáltatások összessége."

Hasonló előadás


Google Hirdetések