Noutati Microsoft Press    Cisco Press
  Despre Byblos   Info   Cosul   Comanda   Alte comenzi   Cautare dupa detalii
Plata si livrare   Contact   Info firma
 
Preturile cartilor sunt afisate fara TVA 9%. Aceasta valoare se adauga la comanda la calculul valorii cartilor din cos.
 
Va recomandam:
Organizarea structurata a Calculatoarelor, ed. 4
Editura:Byblos
prin Byblos:
Retele de calculatoare - Ed. a 4-a
de Andrew S. Tanenbaum
Editura:Byblos
prin Byblos:
Modelare parametrică şi adaptivă cu Inventor - vol. 1
de Constantin Stănescu
Editura:Editura FAST
prin Byblos:
Povestea vinului
de Hugh Johnson
Editura:Vino Vero Cluj
Lista de carti selectata
Organizarea structurata a Calculatoarelor, ed. 4
Autor: Andrew S. Tanenbaum

ISBN: 978-9-738669-91-8 (ISBN10: 9-738669-91-X)

Pretul la Byblos este: 45,87 RON
Adaugati la cos

Erata

A patra editie a acestei celebre carti de introducere in arhitectura calculatoarelor a fost
revizuita extensiv pentru a reflecta ultimele noutati aparute in extrem de rapid
schimbatoarea industrie a calculatoarelor. Profesorul Tanenbaum a ramas fidel popularei
sale metode de a prezenta calculatorul ca pe o ierarhie de nivele, fiecare dintre acestea cu
o functionalitate bine definita. Cartea este scrisa intr-un stil accesibil unei largi categorii
de cititori si la un nivel de detaliere ce permite acoperirea tuturor domeniilor importante.

Ce este nou in aceasta editie

o Exemplele pentru rulare prezente de-a lungul textului sunt acum rescrise
pentru procesoare moderne: Pentium II, UltraSparc II si Masina
Virtuala Java inclusiv pentru cipul Java de la Sun ce implementeaza
tehnologia JVM.

o Dispozitivele de Intrare/Iesire au fost actualizate pentru a sublinia
tehnologiile moderne ce se regasesc la discuri RAID, CD-R inscriptibile,
DVD si imprimante color.

o in prezentarea Nivelului Logicii digitale au fost adaugate magistrale
moderne cum ar fi PCI si USB.

o Nivelul microarhitecturii a fost rescris in intregime cuprinzând si
urmatoarele noutati:

o Exemplul detaliat de masina microprogramata ce ilustreaza caile de
date si de control se bazeaza acum pe un subset al Masinii Virtuale
Java.
o Costurile proiectarii si compromisurile legate de performanta sunt
ilustrate de o serie de exemple detaliate culminând cu exemplul Mic-
4, ce foloseste o banda de asamblare (pipeline) cu sapte stadii, pentru
familiarizare cu functionarea calculatoarelor moderne cum ar fi
Pentium II.

o A fost introdusa o sectiune noua, axata pe imbunatatirea
performantelor prin cele mai noi tehnici cum ar fi utilizarea
memoriilor intermediare (cache), predictia salturilor, executia in ne-
ordine sau executia speculativa.

o Nivelul arhitecturii setului de instructiuni acopera limbajul masina cu
exemplificari pe noile procesoare.

o Nivelul sistemului de operare include exemplificari din WindowsNT
pentru Pentium® II si UNIX® pentru UltraSparc II.

o Nivelul limbajului de asamblare a fost imbogatit cu materiale despre
legarea dinamica.

o Capitolul despre arhitectura calculatoarelor paralele a fost complet rescris
si extins pentru a include multiprocesoarele (UMA, NUMA si COMA)
precum si multicalculatoarele (MMP si COW).

o Toate exemplele de cod au fost rescrise in Java.

o Fiecare capitol se incheie cu un numar considerabil de probleme.

o Pe situl web al cartii sunt toate figurile in format PostScript® precum si
un simulator si alte unelte software.

PREFAta XIII

1 INTRODUCERE 1

1.1 ORGANIZAREA STRUCTURATa A CALCULATOARELOR 2

1.1.1 Limbaje, niveluri si masini virtuale 2

1.1.2 Masini multi-nivel contemporane 4

1.1.3 Evolutia masinilor multi-nivel 7

1.2 EVENIMENTE iN ARHITECTURA CALCULATOARELOR 12

1.2.1 Generatia zero - calculatoarele mecanice (1642-1945) 12

1.2.2 Prima generatie - tuburile electronice 14

1.2.3 A doua generatie - tranzistoarele (1955-1965) 17

1.2.4 A treia generatie - circuitele integrate (1965-1980) 19

1.2.5 A patra generatie - integrarea pe scara foarte larga (1980-?) 20

1.3 MENAJERIA CALCULATOARELOR 22

1.3.1 Fortele tehnologice si economice 22

1.3.2 Gama calculatoarelor 24

1.4 EXEMPLE DE FAMILII DE CALCULATOARE 26

1.4.1 Introducere in Pentium II 26

1.4.2 Introducere in UltraSparc II 29

1.4.3 Introducere in PicoJava II 30

1.5 O PRIVIRE DE ANSAMBLU ASUPRA CaRtII 32

PROBLEME 33

2 ORGANIZAREA SISTEMELOR DE CALCUL 35

2.1 PROCESOARE 35

2.1.1 Organizarea UCP 36

2.1.2 Executia instructiunilor 38

2.1.3 RISC versus CISC 41

2.1.4 Principii de proiectare pentru calculatoarele moderne 42

2.1.5 Paralelism la nivel de instructiuni 44

2.1.6 Paralelism la nivelul procesorului 48

2.2 MEMORIA PRIMARa 51

2.2.1 Biti 51

2.2.2 Adrese de memorie 52

2.2.3 Ordinea octetilor 53

2.2.4 Coduri corectoare de erori 55

2.2.5 Memoria intermediara 59

2.2.6 Tipuri si capsule de memorie 61

2.3 MEMORIA SECUNDARa 62

2.3.1 Ierarhii de memorii 63

2.3.2 Discuri magnetice 64

2.3.3 Discuri flexibile 66

2.3.4 Discuri IDE 67

2.3.5 Discuri SCSI 68

2.3.6 RAID 69

2.3.7 CD-ROM-uri 73

2.3.8 CD-uri inscriptionabile 76

2.3.9 CD-uri reinscriptionabile 78

2.3.10 DVD 79

2.4 INTRARE/IEsIRE 81

2.4.1 Magistrale 81

2.4.2 Terminale 84

2.4.3 Mouse 91

2.4.4 Imprimante 93

2.4.5 Modemuri 98

2.5 SUMAR 104

PROBLEME 105

3 NIVELUL LOGIC DIGITAL 109

3.1 PORtI sI ALGEBRa BOOLEANa 109

3.1.1 Porti 110

3.1.2 Algebra booleana 112

3.1.3 Implementarea functiilor booleene 114

3.1.4 Echivalenta circuitelor 115

3.2 CIRCUITE LOGICE DIGITALE DE BAZa 119

3.2.1 Circuite integrate 119

3.2.2 Circuite combinationale 120

3.2.3 Circuite aritmetice 125

3.2.4 Ceasuri 130

3.3 MEMORII 131

3.3.1 Circuite basculante bistabile (CBB) 131

3.3.2 Bistabile 134

3.3.3 Registre 137

3.3.4 Organizarea memoriei 137

3.3.5 Cipuri de memorie 140

3.3.6 Memorii RAM si ROM 141

3.4 CIPURI UCP sI MAGISTRALE 144

3.4.1 Cipuri UCP 144

3.4.2 Magistralele calculatorului 146

3.4.3 Largimea magistralei 148

3.4.4 Sincronizarea magistralelor 149

3.4.5 Arbitrarea magistralei 154

3.4.6 Operatii asupra magistralei 156

3.5 EXEMPLE DE CIPURI UCP 158

3.5.1 Pentium II 158

3.5.2. UltraSPARC II 164

3.5.3 picoJava II 167

3.6 EXEMPLE DE MAGISTRALE 169

3.6.1 Magistrala ISA 170

3.6.2 Magistrala PCI 171

3.6.3 Magistrala seriala universala (USB) 177

3.7 INTERFAtAREA 181

3.7.1 Circuite de I/E 181

3.7.2 Decodificarea adresei 182

3.8 REZUMAT 185

PROBLEME 186

4 NIVELUL MICROARHITECTURII 191

4.1 EXEMPLU DE MICROARHITECTURa 191

4.1.1 Calea de date 192

4.1.2 Microinstructiuni 198

4.1.3 Controlul microinstructiunii: Mic-1 200

4.2 UN EXEMPLU DE ISA: IJVM 205

4.2.1 Stive 205

4.2.2 Modelul de memorie IJVM 207

4.2.3 Setul de instructiuni IJVM 209

4.2.4 Compilarea codului Java la IJVM 212

4.3 EXEMPLU DE IMPLEMENTARE 213

4.3.1 Microinstructiuni si notatii 214

4.3.2 O implementarea IJVM folosind Mic-1 218

4.4 PROIECTAREA NIVELULUI MICROARHITECTURII 228

4.4.1 Viteza comparativ cost 228

4.4.2 Reducerea lungimii caii de executie 230

4.4.3 Arhitectura cu citire in avans: Mic-2 237

4.4.4 Arhitectura de tip banda de asamblare: Mic-3 237

4.4.5 O banda de asamblare cu sapte segmente: Mic-4 244

4.5 iMBUNaTatIREA PERFORMANtELOR 247

4.5.1 Memoria intermediara (cache) 248

4.5.2 Predictia ramificatiilor 253

4.5.3 Executie ne-ordonata si redenumirea registrelor 258

4.5.4 Executie speculativa 263

4.6 EXEMPLE ALE NIVELULUI MICROARHITECTURII 265

4.6.1 Microarhitectura UCP Pentium II 265

4.6.2 Microarhitectura UCP UltraSPARC-II 269

4.6.3 Microarhitectura UCP de la picoJava II 272

4.6.4 O comparatie intre Pentium, UltraSPARC si picoJava 277

4.7 REZUMAT 278

PROBLEME 279

5 NIVELUL ARHITECTURII SETULUI DE INSTRUCtIUNI 283

5.1 PRIVIRE DE ANSAMBLU ASUPRA NIVELULUI ISA 285

5.1.1 Proprietatile nivelului ISA 285

5.1.2 Modele de memorie 286

5.1.3 Registrele 288

5.1.4 Instructiunile 290

5.1.5 Privire de ansamblu a nivelului ISA la Pentium II 290

5.1.6 Privire de ansamblu a nivelului ISA la UltraSPARC II 292

5.1.7 Privire de ansamblu asupra Masinii Virtuale Java 295

5.2. TIPURI DE DATE 296

5.2.1 Tipuri de date numerice 297

5.2.2 Tipuri de date nenumerice 297

5.2.3 Tipuri de date la Pentium II 298

5.2.4 Tipuri de date la UltraSPARC II 299

5.2.5 Tipuri de date pe Masina Virtuala Java 299

5.3 FORMATE DE INSTRUCtIUNI 299

5.3.1 Criterii de proiectare a formatelor instructiunilor 300

5.3.2 Coduri de operatii extensibile 302

5.3.3 Formatele instructiunilor la Pentium II 304

5.3.4 Formatele instructiunilor la UltraSPARC II 305

5.3.5 Formatele instructiunilor la JVM 307

5.4 ADRESAREA 309

5.4.1 Moduri de adresare 310

5.4.2 Adresarea imediata 310

5.4.3 Adresarea directa 311

5.4.4 Adresarea prin registre 311

5.4.5 Adresarea indirecta prin registre 311

5.4.6 Adresarea indexata 312

5.4.7 Adresarea bazata - indexata 314

5.4.8 Adresarea prin stiva 314

5.4.9 Moduri de adresare pentru instructiunile de ramificare 317

5.4.10 Ortogonalitatea codurilor operatiilor si modurilor de adresare 318

5.4.11 Modurile de adresare la Pentium II 319

5.4.12 Modurile de adresare la UltraSPARC II 321

5.4.13 Modurile de adresare la JVM 321

5.4.14 Discutie asupra modurilor de adresare 322

5.5 TIPURI DE INSTRUCtIUNI 323

5.5.1 Instructiuni de mutare a datelor 323

5.5.2 Operatii diadice 324

5.5.3 Operatii monadice 325

5.5.4 Comparatii si ramificari conditionate 326

5.5.5 Instructiuni de apel de procedura 328

5.5.6 Controlul ciclurilor 328

5.5.7 Intrare/Iesire (I/E) 330

5.5.8 Instructiunile Pentium II 333

5.5.9 Instructiunile UltraSPARC II 335

5.5.10 Instructiunile lui picoJava II 338

5.5.11 Comparatie intre seturile de instructiuni 342

5.6 FLUXUL DE CONTROL 343

5.6.1 Fluxul de control secvential si ramificatii 343

5.6.2 Proceduri 344

5.6.3 Corutine 348

5.6.4 Capcane 351

5.6.5 intreruperi 351

5.7 UN EXEMPLU DETALIAT: TURNURILE DIN HANOI 355

5.7.1 Turnurile din Hanoi in limbaj de asamblare pentru Pentium II 355

5.7.2 Turnurile din Hanoi in limbajul de asamblare al UltraSPARC II 357

5.7.3 Turnurile din Hanoi in limbajul de asamblare al JVM 359

5.8 INTEL IA-64 360

5.8.1 Problema Pentium II 361

5.8.2 Modelul IA-64: calculul cu instructiuni paralele explicite 362

5.8.3 Predicatie 364

5.8.4 incarcari speculative 366

5.8.5 Confruntarea cu realitatea 366

5.9 REZUMAT 367

PROBLEME 368

6 NIVELUL SISTEMULUI DE OPERARE AL MAsINII 373

6.1 MEMORIA VIRTUALa 374

6.1.1 Paginare 375

6.1.2 Implementarea paginarii 377

6.1.3 Paginarea la cerere si modelul setului de lucru 380

6.1.4 Politica de inlocuire a paginilor 381

6.1.5 Dimensiunea paginii si fragmentarea 383

6.1.6 Segmentarea 384

6.1.7 Implementarea segmentarii 387

6.1.8 Memoria virtuala la Pentium II 390

6.1.9 Memoria virtuala la UtraSPARC 394

6.1.10 Memoria virtuala si tehnica memoriei intermediare 396

6.2 INSTRUCtIUNI VIRTUALE DE I/E 397

6.2.1 Fisiere 398

6.2.2 Implementarea instructiunilor virtuale de I/E 399

6.2.3 Instructiuni pentru gestiunea cataloagelor 402

6.3 INSTRUCtIUNI VIRTUALE PENTRU PROCESARE PARALELa 403

6.3.1 Crearea proceselor 404

6.3.2 Conditii de cursa 405

6.3.3 Sincronizarea proceselor folosind semafoare 409

6.4 EXEMPLE DE SISTEME DE OPERARE 412

6.4.1 Introducere 412

6.4.2 Exemple de memorie virtuala 420

6.4.3 Exemple de operatii de I/E virtuale 424

6.4.4 Exemple de gestionare a proceselor 434

6.5 REZUMAT 440

PROBLEME 441

7 NIVELUL LIMBAJULUI DE ASAMBLARE 447

7.1 INTRODUCERE iN LIMBAJUL DE ASAMBLARE 448

7.1.1 Ce este limbajul de asamblare? 448

7.1.2 De ce sa utilizam limbajul de asamblare? 449

7.1.3 Formatul unei instructiuni in limbaj de asamblare 451

7.1.4 Pseudoinstructiuni 454

7.2 MACRO 456

7.2.1 Macrodefinitie, apel si expandare 457

7.2.2 Macrodefinitii cu parametri 458

7.2.3 Facilitati avansate 459

7.2.4 Implementarea facilitatii de macrodefinitii intr-un asamblor 460

7.3 PROCESUL DE ASAMBLARE 461

7.3.1 Asambloare cu doua treceri 461

7.3.2 Prima trecere 462

7.3.3 A doua trecere 464

7.3.4 Tabela de simboluri 467

7.4 EDITAREA LEGaTURIOR sI iNCaRCAREA PROGRAMELOR 468

7.4.1 Activitatile realizate de editorul de legaturi 469

7.4.2 Structura unui modul obiect 472

7.4.3 Momentul legarii si relocarii dinamice 473

7.4.4 Legarea dinamica 476

7.5 REZUMAT 480

PROBLEME 480

9 ARHITECTURI DE CALCULATOARE PARALELE 485

8.1 PROIECTAREA CALCULATOARELOR PARALELE 486

8.1.1 Modele de comunicare 488

8.1.2 Retele de interconectare 492

8.1.3 Performanta 500

8.1.4 Programe 505

8.1.5 Clasificarea calculatoarelor paralele 510

8.2 CALCULATOARELE SIMD 513

8.2.1 Procesoare matriceale 513

8.2.2 Procesoare vectoriale 514

8.3 MULTIPROCESARE CU MEMORIE PARTAJATa 517

8.3.1 Semantica memoriei 518

8.3.2 Arhitecturi SMP UMA bazate pe magistrala 522

8.3.3 Multiprocesoare UMA care folosesc comutatoare de tip grila 527

8.3.4 Multiprocesoare UMA care folosesc retele de comutare cu mai multe trepte 529

8.3.5 Multiprocesoare NUMA 531

8.3.6 Multiprocesoare NUMA cu memorie intermediara coerenta 532

8.3.7 Multiprocesoare COMA 542

8.4 MULTICALCULATOARE CU TRANSFER DE MESAJE 543

8.4.1 Procesoare Masive Paralele - MPP 545

8.4.2 Grupuri de statii de lucru COW – Clusters of Workstations 548

8.4.3 Planificarea 550

8.4.4 Software de comunicare pentru multicalculatoare 554

8.4.5 Memorie partajata la nivelul aplicatiei 557

8.5 REZUMAT 563

PROBLEME 564

9 RECOMANDaRI DE LECTURa sI BIBLIOGRAFIA 569

9.1 SUGESTII PENTRU LECTURI VIITOARE 569

9.1.1 Introducere si lucrari generale 569

9.1.2 Organizarea sistmelor de calcul 570

9.1.3 Nivelul logic digital 571

9.1.4 Nivelul microarhitectural 572

9.1.5 Nivelul arhitecturii setului de instructiuni 572

9.1.6 Nivelul sistemului de operare al masinii 573

9.1.7 Nivelul limbajului de asamblare 574

9.1.8 Arhitecturi de calculatoare paralele 574

9.1.9 Numere binare si in virgula mobila 575

9.2 BIBLIOGRAFIE ALFABETICa 576

A NUMERE BINARE 587

A.1 NUNERE CU PRECIZIE FINITa 587

A.2 SISTEME DE BAZE DE NUMERAtIE 589

A.3 CONVERSIA DINTR-O BAZa iN ALTA 590

A.4 NUMERE BINARE NEGATIVE 593

A.5 ARITMETICA BINARa 595

PROBLEME 596

B NUMERE iN VIRGULa MOBILa 599
B.1 PRINCIPIILE VIRGULEI MOBILE 599

B.2 STANDARDUL IEEE 754 PENTRU VIRGULA MOBILa. 602

PROBLEME 605

C LISTa DE ABREVIERI 607

D DICTIONAR ENGLEZ-ROMÂN 611

E INDEX 617

Erata: In cartea tiparita la cuprins, de la pagina 365, numerotarea este gresita ("inghetata"). Aceasta problema este rezolvata prin inserarea unor pagini de erata sau prin corectura manuala. Optiunea este a cumparatorului si va rugam sa specificati varianta dorita in formularul de comanda. Ne cerem scuze pentru aceasta situatie. Pe site, numerotarea este corecta.

Puteti sa descarcati fisierul in format PDF pentru cele 4 pagini cu numerotare incorecta din cuprins de aici.

Selectie: Cautare [grammar practice activities]
Pentru a selecta mai precis din lista de carti utilizati cautarea dupa detalii.

1 Grammar Practice Activities    
 de Ur, Penny
142,00 RON Adaugati
Cambridge Univ Press   anul publicarii: 2009  
ISBN: 978-0-521732-32-1 (ISBN10: 0-521732-32-8)

Livrare
   
Categorii:

prin Byblos:
Introducere in Algoritmi
de Thomas H. Cormen
Editura:Byblos
prin Byblos:
Sisteme de Operare Moderne - Editia a 2-a
de Andrew S. Tanenbaum
Editura:Byblos

© 2000-2010 Byblos srl.       Politica de confidentialitate     Contact