您的位置:首页 > 其它

王爽汇编语言 实验12

2017-09-11 12:32 169 查看
;[b]*********************************************[/b]

;编写程序,使得在除法溢出时,在屏幕中显示字符串

;”divide error!”然后返回dos

;[b]*********************************************[/b]

assume cs:code, ss:stack

stack segment

db 128 dup(0)

stack ends

code segment

start:

mov ax, cs

mov ds, ax

mov si, offset do0 ;ds:si指向源地址

mov ax, 0
mov es, ax
mov di, 200h                ;es:di,0000:2000指向目标地址
mov cx, offset do0end-offset do0      ;cx中存放传输长度
cld                         ;设定传输方向为正
rep movsb                   ;将中断处理程序do0放到内存中

mov word ptr es:[0*4], 200h
mov word ptr es:[0*4+2], 0  ;设置中断向量表为0000:0200
int 0                       ;调用0号中断


do0:

jmp short do0start

db “divide errors!”

do0start:

mov ax, cs

mov ds, ax

mov si, 202h ;设置ds:si指向字符串

mov ax, 0b800h
mov es, ax
mov di, 12*160+36*2         ;设置es:di指向显存空间的中间位置

mov cx, 9


s:mov al, [si]

mov es:[di], al ;写入显存

inc si

add di, 2

loop s

mov ax, 4c00h

int 21h

do0end:nop

code ends

end start
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: