编写包含多个功能子程序的中断例程
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 i7c
mov di,200h
mov ax,0
mov es,ax
mov cx,offset i7cend-offset i7c
cld
rep movsb ;安装int 7c中断
cli
mov ...
[2013-05-04 10:54] 实验17
阅读全文 |
评论次数(0) |
浏览次数(649) |
所属类型(汇编疑惑)
[2013-05-04 10:48] 实验17
编写包含多个功能子程序的中断例程
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 i7c
mov di,200h
mov ax,0
mov es,ax
mov cx,offset i7cend-offset i7c
cld
rep movsb ;安装int 7c中断
cli
mov ...
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 i7c
mov di,200h
mov ax,0
mov es,ax
mov cx,offset i7cend-offset i7c
cld
rep movsb ;安装int 7c中断
cli
mov ...
阅读全文 |
评论次数(0) |
浏览次数(626) |
所属类型(汇编作业)
[2013-05-04 08:54] 检测点17.1
在int 16h中断例程中,一定有设置if=1的指令,这种说法对吗?
这种说法对的...
这种说法对的...
阅读全文 |
评论次数(0) |
浏览次数(595) |
所属类型(汇编作业)
[2013-05-03 11:00] 实验16 编写包含多个功能子程序的中断例程
安装一个新的int 7ch中断例程,为显示输出提供如下功能子程序
(1) 清屏;
(2) 设置前景色;
(3) 设置北景色;
(4) 向上滚动一行;
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 ax,0
mov es,ax
mov si,offset int7c
mov di,200h ;设置ds:si和es:...
(1) 清屏;
(2) 设置前景色;
(3) 设置北景色;
(4) 向上滚动一行;
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 ax,0
mov es,ax
mov si,offset int7c
mov di,200h ;设置ds:si和es:...
阅读全文 |
评论次数(0) |
浏览次数(644) |
所属类型(汇编作业)
[2013-05-02 21:01] 检测点16.2
下面的程序将data段中a处的8个数据累加,结果存储到b处的
字中,补全程序.
assume cs:code,es:data
data segment
a db 1,2,3,4,5,6,7,8
b dw 0
data ends
code segment
start: (mov ax,data)
(mov ds,ax)
mov si,0
mov cx,8
s: mov al,a[si]
mov ah,0
add b,ax
inc si
loop s
mov ax,4c00h
int 21h
code ends
end s...
字中,补全程序.
assume cs:code,es:data
data segment
a db 1,2,3,4,5,6,7,8
b dw 0
data ends
code segment
start: (mov ax,data)
(mov ds,ax)
mov si,0
mov cx,8
s: mov al,a[si]
mov ah,0
add b,ax
inc si
loop s
mov ax,4c00h
int 21h
code ends
end s...
阅读全文 |
评论次数(0) |
浏览次数(593) |
所属类型(汇编作业)
[2013-05-02 20:57] 检测点16.1
下面的程序将code段中a处的8个数据累加,结果存储到b处的
双字中,补全程序.
assume cs:code
code segment
a dw 1,2,3,4,5,6,7,8
b dd 0
start: mov si,0
mov cx,8
s: mov ax,(a[si])
add (b),ax
adc b[2],0
add si,(2)
loop s
mov ax,4c00h
int 21h
code ends
end start...
双字中,补全程序.
assume cs:code
code segment
a dw 1,2,3,4,5,6,7,8
b dd 0
start: mov si,0
mov cx,8
s: mov ax,(a[si])
add (b),ax
adc b[2],0
add si,(2)
loop s
mov ax,4c00h
int 21h
code ends
end start...
阅读全文 |
评论次数(0) |
浏览次数(578) |
所属类型(汇编作业)
[2013-05-02 13:54] 实验15
在松开'A'键时,在满屏幕显示A
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 ax,0
mov es,ax
mov si,offset int9
mov di,0204h ;设置ds:si与es:di
push es:[9*4]
pop es:[200h]
push es:[9*4+2]
pop es:[2...
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 ax,0
mov es,ax
mov si,offset int9
mov di,0204h ;设置ds:si与es:di
push es:[9*4]
pop es:[200h]
push es:[9*4+2]
pop es:[2...
阅读全文 |
评论次数(0) |
浏览次数(623) |
所属类型(汇编作业)
[2013-05-01 08:54] 关于检测点15.1
在命令行及VMware ms-dos7.1下面,执行到
mov word ptr es:[9*4],offset int9
mov es:[9*4+2],bx
就会出错...
mov word ptr es:[9*4],offset int9
mov es:[9*4+2],bx
就会出错...
阅读全文 |
评论次数(0) |
浏览次数(543) |
所属类型(汇编疑惑)
[2013-04-30 22:27] 检测点15.1
(1)
pushf
pushf
pop ax
and ah,11111100b
push ax
popf
call dword ptr ds:[0]
可以精简为
(pushf)
(call dword ptr ds:[0])
(2)需要在下面两条指令前后各加一条指令
mov word ptr es:[9*4],offset int9
mov es:[9*4+2],cs ;设置新的int 9入口地址
(cli)
mov word ptr es:[9*4],offset int9
mov es:[9*4+2],cs
(sti)...
pushf
pushf
pop ax
and ah,11111100b
push ax
popf
call dword ptr ds:[0]
可以精简为
(pushf)
(call dword ptr ds:[0])
(2)需要在下面两条指令前后各加一条指令
mov word ptr es:[9*4],offset int9
mov es:[9*4+2],cs ;设置新的int 9入口地址
(cli)
mov word ptr es:[9*4],offset int9
mov es:[9*4+2],cs
(sti)...
阅读全文 |
评论次数(0) |
浏览次数(594) |
所属类型(汇编作业)
[2013-04-25 22:26] 实验14 访问CMOS RAM
编程,以“年/月/日 时:分:秒”的格式显示当前的日期、时间
assume cs:code
data segment
db '/',':'
data ends
code segment
start: mov ax,0b800h
mov es,ax
mov di,160*12+30*2
mov ax,data
mov ds,ax ;设置好es:di及ds
mov bl,ds:[0]
mov bh,ds:[1] ;bx/sp分别为'/'和':'
mov byte ptr es:[di],'2'
mov byte ptr es:[di+1]...
assume cs:code
data segment
db '/',':'
data ends
code segment
start: mov ax,0b800h
mov es,ax
mov di,160*12+30*2
mov ax,data
mov ds,ax ;设置好es:di及ds
mov bl,ds:[0]
mov bh,ds:[1] ;bx/sp分别为'/'和':'
mov byte ptr es:[di],'2'
mov byte ptr es:[di+1]...
阅读全文 |
评论次数(0) |
浏览次数(591) |
所属类型(汇编作业)
『 查看更多文章 』