汇编语言 王爽(第三版)实验十六
2016-11-30 22:48
344 查看
assume cs:code stack segment db 128 dup(0) stack ends code segment start: mov ax,stack mov ss,ax mov sp,128 push cs pop ds mov si,offset int7cstart mov ax,0 mov es,ax mov di,200h mov cx, offset int7cend - offset int7cstart cld rep movsb mov word ptr es:[4*7ch],200h mov word ptr es:[4*7ch+2],0 mov ax,4c00h int 21h int7cstart: jmp short codestart table dw offset sh0 - offset int7cstart + 200h, offset sh1 - offset int7cstart + 200h, offset sh2 - offset int7cstart + 200h, offset sh3 - offset int7cstart + 200h codestart: cmp ah,3 ja ok push bx push si mov bl,ah mov bh,0 add bx,bx mov si,offset start - offset int7cstart call word ptr table[bx+si+200h] pop si pop bx jmp ok sh0: push cx push es push di mov cx,0b800h mov es,cx mov di,0 mov cx,2000 sclear: mov byte ptr es:[di],' ' add di,2 loop sclear pop di pop es pop cx ret sh1: push cx push es push di mov cx,0b800h mov es,cx mov di,1 mov cx,2000 sfrontcolor: and byte ptr es:[di],11111000b or es:[di],al add di,2 loop sfrontcolor pop di pop es pop cx ret sh2: push cx push es push di mov cx,0b800h mov es,cx mov di,1 mov cx,2000 sbackcolor: and byte ptr es:[di],10001111b or es:[di],al add di,2 loop sbackcolor pop di pop es pop cx ret sh3: push cx push es push di push ds push si mov cx,0b800h mov es,cx mov ds,cx mov di,0 mov si,160 cld mov cx,24 sremove: push cx mov cx,160 rep movsb pop cx loop sremove mov cx,80 sclearlast: mov byte ptr es:[di],' ' add di,2 loop sclearlast pop si pop ds pop di pop es pop cx ret ok: iret int7cend: nop code ends end start
相关文章推荐
- 汇编语言(王爽 第三版)实验十六
- 汇编语言 王爽(第三版)实验十五
- 汇编语言 王爽(第三版) 实验七
- 汇编语言 第三版 王爽 实验5 第5、6小题程序
- 汇编语言 第三版 王爽 实验10-2 编写子程序 之 解决除法溢出问题 divdw
- 汇编语言 王爽(第三版) 实验4 [bx]和loop的使用
- 王爽-汇编语言第三版实验7
- 汇编语言(王爽第三版)实验9根据材料编程
- 王爽 汇编语言 第三版 实验10 编写子程序
- 王爽 汇编语言 第三版 实验14 访问 CMOS RAM
- 王爽 汇编语言 第三版 实验15 安装新的int 9中断例程
- 汇编语言(王爽 第三版)实验五
- 汇编语言 第三版 王爽 实验四
- 汇编语言(王爽 第三版)实验七
- 【汇编语言】王爽第三版----------------实验7
- 汇编语言(王爽 第三版)实验九
- 汇编语言 第三版 王爽 实验七 独立完成
- 汇编语言(王爽 第三版)实验十
- 【汇编语言】王爽第三版----------------实验9
- 汇编语言(王爽 第三版)实验十一