Newsgroup: it.comp.lang.c++
Titolo: registri cpu

Scusatemi della domanda che potrebbe essere OT per gli esperti.
Di quanti bit e composto un registro di un processore pentium 133 (i primi
per intenderci)?
Grazie!


I registri del Pentium (qualsiasi) sono prevalentemente a 32 bit ad
eccezione di quelli di segmento.
Eccoti una lista approssimativa dei suddetti registri:
EAX - Registro a 32 bit ad uso generico
 AX - Stesso registro a 16 bit
 AL - Byte inferiore di AX (8 bit)
 AH - Byte superiore di AL (8 bit) 
EBX - Regstro a 32 bit ad uso generico e utilizzabile come spiazzamento nell'
      indirizzamento di stringhe od array.
 BX - Stesso registro a 16 bit
 BH - Byte superiore di BX
 BL - Byte inferiore di BX
ECX - Registro a 32 bit ad uso generale e utilizzabile come contatore nei loop
 CX - Stesso registro a 16 bit
 CL - Byte inferiore di CX
 CH - Byte superiore di CX
EDX - Vedi EBX ma puo' essere usato anche nelle operazioni di I/O tramite le istruzioni IN/OUT.
 DX - Stesso registro a 16 bit
 DL - Byte inferiore di DX
 DH - Byte superiore di DX
ESP-EBP - Registri utilizzati per la gestione dello stack
  SP-BP - Stessi registri a 16 bit.
ESI-EDI - Questi registri vengono utilizzati nelle operazioni con stringhe (od array se preferisci) soprattutto nello spostamento da un' area di memoria all'altra di blocchi di dati.
ESI indica l'indirizzo di origine.
EDI indica l'indirizzo di destinazione.
SI-DI - Stessi registri a 16 bit.
Ora utilizzero' questi due simboli per indicare:
RM -  Modalita' reale.
PM -  Modalita' protetta.
CS - RM: Questo registro punta al segmento contenente il codice.
     PM: Questo registro punta al descrittore del segmento codice.
DS - RM: Questo registro punta al segmento contenente i dati.
     PM: Questo registro punta al descrittore del segmento dati.
 
SS - RM: Questo registro punta al segmento contenente lo stack.
     PM: Questo registro punta al descrittore del segmento stack.
ES-FS-GS - RM: Questi registri puntano ad aree di dati extra.
	   PM: Questi registri puntano ai descrittori di segmenti extra.
 
Questi registri sono comunque utilizzabili gia' dal 386 in poi.
Spero di averti soddisfatto.
CiaZ.
 ______  _     _ ______  ______                  _
(______)(_)   | (_____ \(______)                | |
 _     _ _____| | ____) )_     _ _____ ____   __| |
| |   | |  _   _)/ ____/| |   | | ___ |  _ \ / _  |
| |__/ /| |  \ \| (_____| |__/ /| ____| | | ( (_| |
|_____/ |_|   \_)_______)_____/ |_____)_| |_|\____|
The    Magic    Is    Everything     You    Imagine
		e-mail  
DK2...@cryogen.com
 
am57...@silab.dsi.unimi.it

Gentile DK2Dend mi sei stato molto di aiuto, grazie!
Ma tutti i registri che mi hai elencato sono separati o è un unico
registro. Si possono  rappresentare con uno schema a blocco questi
registri?
Inoltre, conosci un testo dove poter approfondire l'argomento?
Grazie! 

 Grazie! 
Intendi forse dire che ,per esempio, EAX-AX-AH-AL sono lo stesso registro?
Beh posso anche dirti di si', eccoti uno schemino
			Questi sono i bit di un registro 0-31 (32)
			3322222222221111111111
			10987654321098765432109876543210
				        |--AH--||--AL--|
					|------AX------|
			|---------------EAX------------|
I libri da cui ho tratto alcune informazioni sono:
Programmazione C avanzata - P. Norton -Jackson Libri
JackBook 6 Programmare in assembly con i PC IBM - ? - Jackson Libri
Ma onestamente ti consiglio di dare un' occhiata a questi 
libri prima di acquistarli. Potrebbero deluderti anche perche' danno 
solo dei cenni su questo argomento.
Potresti cercare qualche tutorial su internet riguardanti la programmazione in
assembly poiche' le informazioni che ti ho fornito sono necessarie per 
poter programmare con questo linguaggio.
-- 


>Di quanti bit e composto un registro di un processore pentium 133
32, se non erro.
--
Byez.
Stefano Tempesta
temp...@tin.it
http://tempesta.freeweb.org
--------------------------------
(-: To "shut down" your system, type "WIN" :-)
(-: Windows VirusScan 1.0 - "Windows found: Remove it? (Y/N)" :-)

Sei un mito! :-) 
Ciao!

 Ciao!
Modestamente :)
