31 lines
834 B
NASM
31 lines
834 B
NASM
|
; ADDIT: ASM-Beispiel zur Division mit dem SBC86
|
||
|
; C.Koch | 03.11.2010
|
||
|
|
||
|
org 100h
|
||
|
cpu 8086
|
||
|
|
||
|
START:
|
||
|
; **** Byte-Division ****
|
||
|
mov ax,4522 ; Dividend ist immer das AX-Register (16 Bit)
|
||
|
mov bh,120 ; Divisor sei ein Wert in BH (8 Bit)
|
||
|
div bh ; AX/BH = Quotient in AL, Ganzzahlrest in AH
|
||
|
|
||
|
mov byte [nErgebnis],al ; Quotient -> Speicher
|
||
|
mov byte [nRest],ah ; Ganzzahlrest -> Speicher
|
||
|
|
||
|
; **** Wort-Division ****
|
||
|
mov dx, 0 ; Dividend ist immer das RegisterPAAR DX:AX (32 Bit)
|
||
|
mov ax,45220 ; Dividend, Bit 0...15
|
||
|
mov bx,120 ; Divisor sei ein Wert in BX (16 Bit)
|
||
|
div bx ; (DX:AX)/BX = Quotient in AX, Rest in DX
|
||
|
|
||
|
mov word [nErgebnis],ax ; Quotient -> Speicher
|
||
|
mov word [nRest],dx ; Ganzzahlrest -> Speicher
|
||
|
|
||
|
jmp START
|
||
|
|
||
|
nErgebnis dw 0 ; Adresse? Wert=
|
||
|
nRest dw 0 ; Adresse? Wert=
|
||
|
|
||
|
sText db 'Hier koennte Ihre Werbung stehen'
|