1.034.218

kiadvánnyal nyújtjuk Magyarország legnagyobb antikvár könyv-kínálatát

A kosaram
0
MÉG
5000 Ft
a(z) 5000Ft-os
szállítási
értékhatárig

Számítógép-architektúrák

Szerző
Fordító
Lektor

Kiadó: Panem Könyvkiadó Kft.
Kiadás helye: Budapest
Kiadás éve:
Kötés típusa: Fűzött kemény papírkötés
Oldalszám: 815 oldal
Sorozatcím:
Kötetszám:
Nyelv: Magyar  
Méret: 24 cm x 17 cm
ISBN: 963-5454-57-0
Megjegyzés: Fekete-fehér ábrákkal. 2. átdolgozott, bővített kiadás.
Értesítőt kérek a kiadóról

A beállítást mentettük,
naponta értesítjük a beérkező friss
kiadványokról
A beállítást mentettük,
naponta értesítjük a beérkező friss
kiadványokról

Fülszöveg

Tanenbaum professzor könyvének első magyar kiadása azt az elvet követte, hogy a számítógép egymásra épülő szintek hierarchiájaként fogható fel, melyek mindegyikének megvan a saját jól meghatározott feladata. Ez az alapelv ma is érvényben van, ezért a második, bővített, átdolgozott kiadás is ezen alapszik. Jóllehet az alapfelépítés ugyanaz, a második kiadás - követve a gyorsan változó számítógép-iparágat - számos vonatkozásában megváltozott.
A bevezetés a számítógép-architektúrák történelmi áttekintésén kívül bemutatja a jelenleg létező számítógéptípusok spektrumát és a példaprocesszorokat (Pentium 4, UltraSPARC III és 8051). A számítógéprendszerek felépítését tárgyaló fejezetben a bemeneti/kimeneti eszközök témaköre kiegészült, kiemelve a modern eszközökben használt technológiákat (digitális kamerák, DSL és kábeles internet). A digitális logika, a mikroarchitektúra, az utasításrendszer-architektúra és az operációs rendszer gép, valamint az assembly nyelv szintjét részletesen... Tovább

Fülszöveg

Tanenbaum professzor könyvének első magyar kiadása azt az elvet követte, hogy a számítógép egymásra épülő szintek hierarchiájaként fogható fel, melyek mindegyikének megvan a saját jól meghatározott feladata. Ez az alapelv ma is érvényben van, ezért a második, bővített, átdolgozott kiadás is ezen alapszik. Jóllehet az alapfelépítés ugyanaz, a második kiadás - követve a gyorsan változó számítógép-iparágat - számos vonatkozásában megváltozott.
A bevezetés a számítógép-architektúrák történelmi áttekintésén kívül bemutatja a jelenleg létező számítógéptípusok spektrumát és a példaprocesszorokat (Pentium 4, UltraSPARC III és 8051). A számítógéprendszerek felépítését tárgyaló fejezetben a bemeneti/kimeneti eszközök témaköre kiegészült, kiemelve a modern eszközökben használt technológiákat (digitális kamerák, DSL és kábeles internet). A digitális logika, a mikroarchitektúra, az utasításrendszer-architektúra és az operációs rendszer gép, valamint az assembly nyelv szintjét részletesen ismertető fejezeteket szintén frissítettük, valamint új pontokkal is kiegészítettük. A párhuzamos számítógép-architektúrákkal foglalkozó fejezet jelentős mértékben megváltozott, hogy a párhuzamos feldolgozás formáiban fellelhető új tevékenységeket kövesse. Az ajánlott olvasmányok és az irodalomjegyzék ugyancsak jelentősen frissült - a hivatkozások több mint fele az előző kiadás óta megjelent írásokra mutat. A bináris és lebegőpontos számokkal foglalkozó függelékek nem változtak, az assembly nyelvű programozást ismertető függelék azonban teljesen új. A könyvhöz tartozó CD-RGM melléklet assembly fejlesztést segítő, Windows-, Linux- és Macintosh-platformokra telepíthető eszközöket (8088 assembler, szimulátor, nyomkövető) tartalmaz. Vissza

Tartalom

Előszó 13
1. Bevezetés 17
1.1. Strukturált számítógép-felépítés 18
1.1.1. Nyelvek, szintek és virtuális gépek 18
1.1.2. Korszerű többszintű számítógépek 20
1.1.3. A többszintű számítógépek fejlődése 23
1.2. Mérföldkövek a számítógépek felépítésében 28
1.2.1. Nulladik generáció: mechanikus számológépek (1642-1945) 30
1.2.2. Első generáció: vákuumcsövek (1945-1955) 31
1.2.3. Második generáció: tranzisztorok (1955-1965) 34
1.2.4. Harmadik generáció: integrált áramkörök (1965-1980) 36
1.2.5. Negyedik generáció: magas integráltságú áramkörök (1980-?) 38
1.2.6. Ötödik generáció: láthatatlan számítógépek 40
1.3. Számítógép-kiállítás 42
1.3.1. Technológiai és gazdasági mozgatórugók 42
1.3.2. A számítógépek termékskálája 44
1.3.3. Eldobható számítógépek 44
1.3.4. Mikrovezérlők 46
1.3.5. Játékgépek 48
1.3.6. Személyi számítógépek 49
1.3.7. Kiszolgálók 50
1.3.8. Munkaállomások gyűjteménye 50
1.3.9. Nagyszámítógépek 51
1.4. Néhány számítógépcsalád 52
1.4.1. A Pentium 4 áttekintése 52
1.4.2. UltraSPARC III áttekintése 57
1.4.3. A 8051 59
1.5. Mértékegységek 61
1.6. Könyvünk tartalmáról 62
1.7. Feladatok 63
2. Számítógéprendszerek felépítése 66
2.1. Processzorok 66
2.1.1. A CPU felépítése 67
2.1.2. Utasítás-végrehajtás 68
2.1.3. RISC és CISC 72
2.1.4. Korszerű számítógépek tervezési elvei 74
2.1.5. Utasításszintű párhuzamosság 75
2.1.6. Processzorszintű párhuzamosság 80
2.2. Központi memória 83
2.2.1. Bitek 84
2.2.2. Memóriacímek 84
2.2.3. Bájtsorrend 86
2.2.4. Hibajavító kódok 88
2.2.5. Gyorsítótár 92
2.2.6. Memóriatokozás és -típusok 95
2.3. Háttérmemória 96
2.3.1. Memóriahierarchia 96
2.3.2. Mágneslemezek 97
2.3.3. Hajlékonylemezek 100
2.3.4. IDE-lemezek 101
2.3.5. SCSI-lemezek 103
2.3.6. RAID 104
2.3.7. CD-ROM 108
2.3.8. Írható CD-k 112
2.3.9. Újraírható CD-k 114
2.3.10. DVD 115
2.3.11. Blu-Ray 117
2.4. Bemenet/Kimenet 117
2.4.1. Sínek 117
2.4.2. Terminálok 121
2.4.3. Egér 126
2.4.4. Nyomtatók 127
2.4.5. Telekommunikációs berendezések 133
2.4.6. Digitális kamerák 141
2.4.7. Karakterkódok 143
2.5. Összefoglalás 147
2.6. Feladatok 148
3. A digitális logika szintje 152
3.1. Kapuk és Boole-algebra 152
3.1.1. Kapuk 153
3.1.2. Boole-algebra 155
3.1.3. A Boole-függvények megvalósítása 157
3.1.4. Áramköri ekvivalencia 159
3.2. Alapvető digitális logikai áramkörök 163
3.2.1. Integrált áramkörök 163
3.2.2. Kombinációs áramkörök 165
3.2.3. Aritmetikai áramkörök 170
3.2.4. Órák 175
3.3. Memória 176
3.3.1. Tárolók 177
3.3.2. Flip-flopok 179
3.3.3. Regiszterek 181
3.3.4. Memóriaszervezés 183
3.3.5. Memórialapkák 186
3.3.6. RAM-ok és ROM-ok 188
3.4. CPU lapkák és sínek 191
3.4.1. CPU lapkák 192
3.4.2. Számítógépes sínek 194
3.4.3. Sínszélesség 196
3.4.4. Sínek időzítése 198
3.4.5. Sínütemezés 202
3.4.6. Sínműveletek 205
3.5. Példák CPU lapkákra 208
3.5.1. Pentium 4 208
3.5.2. UltraSPARC III 214
3.5.3. 8051 219
3.6. Példák sínekre 221
3.6.1. ISA sín 222
3.6.2. PCI sín 223
3.6.3. PCI Express 232
3.6.4. Univerzális soros sín 236
3.7. Kapcsolat a perifériákkal, interfészek 240
3.7.1. A B/K lapkák 240
3.7.2. Címdekódolás 242
3.8. Összefoglalás 245
3.9. Feladatok 246
4. A mikroarchitektúra szintje 251
4.1. Mikroarchitektúra-példa 251
4.1.1. Adatút 252
4.1.2. Mikroutasítások 258
4.1.3. Mikroutasítás-vezérlés: Mic-1 261
4.2. ISA-példa: az IJVM 266
4.2.1. Vermek 266
4.2.2. Az IJVM memóriamodellje 268
4.2.3. Az IJVM utasításkészlete 270
4.2.4. Java fordítása IJVM-re 273
4.3. Példa a megvalósításra 275
4.3.1. Mikroutasítások és jelölésrendszer 275
4.3.2. IJVM megvalósítása Mic-1 felhasználásával 280
4.4. A mikroarchitektúra szintjének tervezése 291
4.4.1. Sebesség vagy ár 291
4.4.2. A végrehajtási út hosszának csökkentése 294
4.4.3. Terv előre betöltéssel: a Mic-2 301
4.4.4. Csővonalas terv: a Mic-3 303
4.4.5. Hétszakaszú csővezeték: a Mic-4 309
4.5. A teljesítmény növelése 312
4.5.1. Gyorsítótár 313
4.5.2. Elágazásjövendölés 319
4.5.3. Sorrendtől eltérő végrehajtás és regiszterátnevezés 324
4.5.4. Feltételezett végrehajtás 329
4.6. Példák a mikroarchitektúra-szintre 332
4.6.1. A Pentium 4 CPU mikroarchitektúrája 332
4.6.2. Az UltraSPARC III Cu CPU-jának mikroarchitektúrája 338
4.6.3. A 8051 CPU mikroarchitektúrája 343
4.7. A Pentium, az UltraSPARC és a 8051 összehasonlítása 346
4.8. Összefoglalás 347
4.9. Feladatok 348
5. Az utasításrendszer-architektúra szintje 352
5.1. Az ISA-szint áttekintése 354
5.1.1. Az ISA-szint tulajdonságai 354
5.1.2. Memóriamodellek 356
5.1.3. Regiszterek 358
5.1.4. Utasítások 359
5.1.5. A Pentium 4 ISA-szintjének áttekintése 359
5.1.6. Az UltraSPARC III ISA-szintjének áttekintése 362
5.1.7. A 8051 ISA-szintjének áttekintése 365
5.2. Adattípusok 368
5.2.1. Numerikus adattípusok 368
5.2.2. Nem numerikus adattípusok 369
5.2.3. A Pentium 4 adattípusai 370
5.2.4. Az UltraSPARC III adattípusai 370
5.2.5. A 8051 processzor adattípusai 371
5.3. Utasításformátumok 371
5.3.1. Utasításformák tervezésének követelményei 372
5.3.2. A műveleti kód kiterjesztése 374
5.3.3. A Pentium 4 utasításformátumai 376
5.3.4. Az UltraSPARC III utasításformátumai 378
5.3.5. A 8051 utasításformátumai 379
5.4. Címzési módszerek 380
5.4.1. Címzési módok 380
5.4.2. Közvetlen címzés 380
5.4.3. Direkt címzés 381
5.4.4. Regisztercímzés 381
5.4.5. Regiszter-indirekt címzés 381
5.4.6. Indexelt címzés 382
5.4.7. Bázis-index címzési mód 384
5.4.8. Veremcímzés 384
5.4.9. Címzési módok elágazó utasításokban 388
5.4.10. A műveleti kód és a címzési mód ortogonalitása 388
5.4.11. A Pentium 4 címzési módjai 390
5.4.12. Az UltraSPARC III címzési módjai 392
5.4.13. A 8051 címzési módjai 392
5.4.14. A címzési módok összefoglalása 393
5.5. Utasítástípusok 394
5.5.1. Adatmozgató utasítások 394
5.5.2. Diadikus műveletek 395
5.5.3. Monadikus műveletek 396
5.5.4. Összehasonlító és feltételes elágazó utasítások 398
5.5.5. Eljáráshívó utasítások 400
5.5.6. Ismétléses vezérlés 400
5.5.7. Bemenet/kimenet 402
5.5.8. A Pentium 4 utasításai 405
5.5.9. Az UltraSPARC III utasításai 408
5.5.10. A 8051 utasításai 411
5.5.11. Az utasításrendszerek összehasonlítása 411
5.6. Vezérlési folyamat 414
5.6.1. Szekvenciális vezérlés és elágazás 414
5.6.2. Eljárások 415
5.6.3. Korutinok (társrutinok) 421
5.6.4. Csapdák 422
5.6.5. Megszakítások 423
5.7. Részletes példa: Hanoi tornyai 427
5.7.1. A Hanoi tornyai probléma megoldása Pentium 4 assembly nyelven 427
5.7.2. A Hanoi tornyai probléma megoldása UltraSPARC III assemblyben 429
5.8. Az Intel IA-64 architektúra és az Itanium 2 431
5.8.1. A Pentium 4 problémái 431
5.8.2. Az IA-64 modell: explicit utasításszintű párhuzamosság 433
5.8.3. A memóriahivatkozások csökkentése 433
5.8.4. Utasításütemezés 434
5.8.5. Feltételes elágazások csökkentése: prédikáció 436
5.8.6. Spekulatív betöltés 438
5.9. Összefoglalás 439
5.10. Feladatok 439
6. Az operációs rendszer gép szintje 444
6.1. Virtuális memória 445
6.1.1. Lapozás 446
6.1.2. A lapozás megvalósítása 448
6.1.3. A kérésre lapozás és a munkahalmaz modell 452
6.1.4. Lapcserélő eljárások 453
6.1.5. Lapméret és elaprózódás 455
6.1.6. Szegmentálás 456
6.1.7. A szegmentálás megvalósítása 459
6.1.8. A Pentium 4 virtuális memóriája 462
6.1.9. Az UltraSPARC III virtuális memóriája 466
6.1.10. Virtuális memória és gyorsítótár 469
6.2. Virtuális B/K utasítások 469
6.2.1. Fájlok 470
6.2.2. A virtuális B/K utasítások megvalósítása 472
6.2.3. Könyvtárkezelő' utasítások 475
6.3. A párhuzamos feldolgozás virtuális utasításai 476
6.3.1. Processzusok létrehozása 477
6.3.2. Versenyhelyzetek 478
6.3.3. Processzusok szinkronizációja szemaforokkal 482
6.4. Példák operációs rendszerekre 486
6.4.1. Bevezetés 486
6.4.2. Példák virtuális memória kezelésére 495
6.4.3. Példák virtuális B/K műveletekre 499
6.4.4. Példák processzusok kezelésére 510
6.5. Összefoglalás 516
6.6. Feladatok 517
7. Az assembly nyelv szintje 524
7.1. Bevezetés az assembly nyelvbe 525
7.1.1. Mi az assembly nyelv? 525
7.1.2. Miért használnak assembly nyelvet? 526
7.1.3. Az assembly utasítások alakja 528
7.1.4. Pszeudoutasítások 531
7.2. Makrók 534
7.2.1. A makrók definíciója, hívása, kifejtése 534
7.2.2. Paraméteres makrók 536
7.2.3. Előnyös tulajdonságok 537
7.2.4. A makróassembler működése 538
7.3. Az assembler menetei 539
7.3.1. Kétmenetes assemblerek 539
7.3.2. Első menet 540
7.3.3. Második menet 544
7.3.4. Szimbólumtábla 545
7.4. Szerkesztés és betöltés 547
7.4.1. A szerkesztő feladatai 548
7.4.2. A tárgymodul szerkezete 551
7.4.3. Hozzárendelési idő és dinamikus áthelyezés 552
7.4.4. Dinamikus szerkesztés 555
7.5. Összefoglalás 559
7.6. Feladatok 560
8. Párhuzamos számítógép-architektúra 563
8.1. Lapkaszintű párhuzamosság 564
8.1.1. Utasításszintű párhuzamosság 565
8.1.2. Lapkaszintű többszálúság 572
8.1.3. Egylapkás multiprocesszorok 578
8.2. Társprocesszorok 583
8.2.1. Hálózati processzorok 584
8.2.2. Médiaprocesszorok 592
8.2.3. Kriptoprocesszorok 597
8.3. Közös memóriás multiprocesszorok 598
8.3.1. Multiprocesszorok és multiszámítógépek 598
8.3.2. Memóriaszemantika 606
8.3.3. UMA sínrendszerű SMP-architektúrák 610
8.3.4. NUMA-multiprocesszorok 619
8.3.5. COMA-multiprocesszorok 628
8.4. Üzenetátadásos multiszámítógépek 629
8.4.1. Összekötő hálózatok 631
8.4.2. MPP - erősen párhuzamos processzor 635
8.4.3. Klaszterszámítógépek 644
8.4.4. A multiszámítógépek kommunikációs szoftvere 650
8.4.5. Ütemezés 652
8.4.6. Alkalmazásszintű közös memória 654
8.4.7. Teljesítmény 661
8.5. Grid számítások 667
8.6. Összefoglalás 670
8.7. Feladatok 671
9. Ajánlott olvasmányok és irodalomjegyzék 674
9.1. Javasolt további olvasmányok 674
9.1.1. Bevezető és általános művek 674
9.1.2. Számítógéprendszerek felépítése 676
9.1.3. Digitális logika szintje 677
9.1.4. A mikroarchitektúra szintje 678
9.1.5 Az utasításrendszer-architektúra szintje 679
9.1.6. Az operációs rendszer gép szintje 679
9.1.7. Assembly nyelv szintje 680
9.1.8. Párhuzamos számítógép-architektúrák 680
9.1.9. Bináris és lebegőpontos számok 682
9.1.10. Assembly nyelvű programozás 683
9.2. Bibliográfia 684
A) Bináris számok 696
A.1. Véges pontosságú számok 696
A.2. Számrendszerek alapszámai 698
A.3. Konverzió egyik alapról a másik alapra 700
A.4. Negatív bináris számok 702
A.5. Bináris aritmetika 705
A.6. Feladatok 706
B) Lebegőpontos számok 708
B.1. A lebegőpontos számábrázolás elvei 708
B.2. Az IEEE 754-es lebegőpontos szabvány 711
B.3. Feladatok 715
C) Assembly nyelvű programozás 717
C.1. Áttekintés 718
C.1.1. Az assembly nyelv 718
C.1.2. Egy rövid assembly nyelvű program 719
C.2. A 8088-as processzor 720
C.2.1. A processzorciklus 720
C.2.2. Az általános regiszterek 722
C.2.3. Mutatóregiszterek 723
C.3. Memória és címzés 725
C.3.1. Memóriaszervezés és szegmensek 725
C.3.2. Címzés 726
C.4. A 8088 utasításrendszere 730
C.4.1. Adatmozgatás, -másolás és aritmetika 730
C.4.2. Logikai, bit- és léptető műveletek 733
C.4.3. Ciklusszervezés és ismétlődő string műveletek 734
C.4.4. Ugró és eljáráshívó utasítások 735
C.4.5. Szubrutin hívások 737
C.4.6. Rendszerhívások és rendszerszubrutinok 738
C.4.7. Záró megjegyzések az utasításrendszerről 740
C.5. Az assembler 741
C.5.1. Bevezetés 741
C.5.2. Az ACK-alapú assembler, az as88 742
C.5.3. Eltérések más 8088-as assemblerektől 746
C.6. A nyomkövető 747
C.6.1. Nyomkövető parancsok 749
C.7. Alapismeretek 751
C.8. Példák 752
C.8.1. Helló Világ példa 752
C.8.2. Példa az általános regiszterekre 756
C.8.3. A call utasítás és a mutató regiszterek 758
C.8.4. Hibakeresés egy tömbkiíró programban 760
C.8.5. String-kezelés és string-utasítások 763
C.8.6. Ugrótáblák 766
C.8.7. Pufferelt és véletlen fájlelérés 768
C.9. Feladatok 771
Angol-magyar tárgymutató 773
Magyar-angol tárgymutató 795

Andrew S. Tanenbaum

Andrew S. Tanenbaum műveinek az Antikvarium.hu-n kapható vagy előjegyezhető listáját itt tekintheti meg: Andrew S. Tanenbaum könyvek, művek
Megvásárolható példányok

Nincs megvásárolható példány
A könyv összes megrendelhető példánya elfogyott. Ha kívánja, előjegyezheti a könyvet, és amint a könyv egy újabb példánya elérhető lesz, értesítjük.

Előjegyzem
konyv