Adressierungsarten der Intelprozessoren Um eine Speicherzelle im Arbeitsspeicher anzusprechen gibt man die effektive Adresse an, die den Offsetanteil der physikali- schen Adresse bezeichnet. Man ben”tigt nur die Angabe der ef- fektiven Adresse, weil der Segmentanteil der Adresse am Anfang eines Maschinenspracheprogramms definiert wird. Die Bildung der effektiven Adresse kann auf mehrere Arten ge- schehen. Je mehr M”glichkeiten es zur Bildung der effektiven Adresse gibt, je leistungsf„higer ist die CPU. Die Vielfalt der Adressierungsm”glichkeiten ist der ausschlaggebenste Leistungs- index einer CPU. Die Bildung der effektiven Adresse ben”tigt bei der 80286 CPU und aufw„rts keine weitere Rechenzeit neben der eigentlichen Be- fehlsabarbeitung, bei den kleineren CPU-Typen l„át sich bei der Optimierung der Adressierungsarten viel Zeit einsparen. Folgend sind die unterschiedlichen Adressierungsarten der 8086/88 CPU und ihrer Nachfolger beschrieben. - direkte Adressierung ( direkte Angabe eines Offsets als Displacement ) Beispiele: MOV AX,[WVar] MOV AX,[WVar+4] Der Segmentanteil fr die Adresse wird aus dem DS-Regis- ter geholt. - indirekte Adressierung ( Angabe eines Offsets ber Basis- (BP,BX), oder Index- register (SI,DI) ) Beispiele: MOV AX,[BP] MOV AX,[SI] Der Segmentanteil wird bei Verwendung des BX,SI und DI- Registers aus dem DS-Register geholt und bei Verwendung des BP-Registers aus dem SS-Register. - gemischte indirekte und direkte Adressierung ( Angabe eines Offsets ber Basis- (BP,BX), oder Index- register (SI,DI) und Displacement ) Beispiele: MOV AX,[BX+4] MOV BX,Array[SI] Der Segmentanteil wird bei Verwendung des BX,SI und DI- Registers aus dem DS-Register geholt und bei Verwendung des BP-Registers aus dem SS-Register. - indirekte Adressierung ( Angabe eines Offsets ber Basis- (BP,BX) und Indexre- gister (SI,DI) ) Beispiele: MOV AX,[BX+DI] MOV AX,[BP+SI] Der Segmentanteil wird aus dem DS-Register geholt, auáer das BP-Register ist an der Adressierung beteiligt, dann wird der Segmentteil aus dem SS-Register geholt. - gemischte direkte und indirekte Adressierung ( Angabe eines Offsets ber Basis- (BP,BX) und Indexre- gister (SI,DI) und Displacement ) Beispiele: MOV AX,Array[BX+SI] MOV BX,[BP+DI+6] Der Segmentanteil wird aus dem DS-Register geholt, auáer das BP-Register ist an der Adressierung beteiligt, dann wird der Segmentanteil aus dem SS-Register geholt. Gabriel