Download Die Assemblersprache der intel 80x86
Transcript
127 18: 19: 20: 21: 22: xchg edi,dl mov esi,dx xchg esi,ebx xchg ch,cx mov ch,cl ;Fehler, Operanden versch. Bitbreite: EDI: 32 Bit, DL: 8 Bit ;Fehler, Operanden versch. Bitbreite: ESI: 32 Bit, DX: 16 Bit ;ok ;Fehler, Operanden versch. Bitbreite: CH: 8 Bit, CX: 16 Bit ;ok 2. EAX=12345678h 3. Zeilen 1,2: Diese beiden Befehle können ersetzt werden durch mov ax,100h Zeilen 3,4: Die beiden Befehle können ersetzt werden durch mov ebx,2800h Zeilen 5,6: Diese beiden Befehle können ersetzt werden durch movzx eax,dl Zeile 7: Entspricht No Operation (NOP), ändert kein Register u. kein Flag Zeilen 8–10: Soll eine Vertauschung von DI und SI bewirken, besser xchg di,si 4. mov DX,BX ; Inhalt von BX parken (retten) ; geht nur, wenn DX frei mov BX,AX mov AX,CX mov CX,DX b) xchg ax,bx xchg ax,cx 5. ; a) mov si,ax shr eax,16 mov di,ax ; b) mov ax,dx shl eax,16 mov ax,cx ; c) mov dl,cl mov dh,ch ; oder besser und kürzer mov dx,cx 6. movzx eax,ax Lösungen der Fragen zu den Betriebssystemaufrufen (Abschnitt 5.4)