无符号除法指令DIV(DIVision)
DIV OPRD ;除数OPRD决定是8位除法还是16位除法
;OPRD=8位,则被除数默认在AX中,AX除以OPRD的商保存在AL中,余数保存在AH中
;OPRD=16位,则被除数默认在DX与AX中,结果的商保存在AX中,余数保存到DX中
assume cs:code data segment db 2,4 data ends code segment start: mov ax,data mov ds,ax mov si,0 mov ax,8 ;设被除数为8H div byte ptr ds:[si];8位除法 ax/[si]=8/2=4 mov dx,10H mov ax,1000H ;设被除数为101000H div word ptr ds:[0];16位除法 (dx,ax)/[si]=00101000H/0402H mov ax,4c00H int 21H code ends end start
`有符号数除法IDIV(sIgned DIVision)
IDIV OPRD ;该指令把除数与被除数均作为有符号数,此外与DIV相同
DIV 会引起除法溢出 引起0号中断