assume cs:code
code segment
;把int7ch中断放在最前面,可以使程序编译时各标号与安装到内存所指向的标号保持一致
os:
jmp short ok
o1:dw o00,o01,o02,o03
ok:
push ax
push bx
push es
mov bx,cs
mov ds,bx
cmp ah,3 ;比较中断功能号大小
ja ooo ;大于3则跳到结束
mov bh,0
mov bl,ah
add bx,bx
call word ptr o1[bx] ;用标号o1中存储的子程序的偏移值来调用子程序
ooo:
...


- [martian] 3号功能滚动2行,而非是题目要求的1行。 其他功能正确,代码写的也很漂亮。 12/26 19:45
- [sunzcpson] 可以呀,我在VMware调试的。 12/11 10:55
- [martian] 博主的程序有问题啊,安装后,按下a键,松开没有实验要求出现的效果,博主再调试调试吧。 12/10 20:14
- [younggay] 没问题,继续前行。 12/09 14:17
- [younggay] 牛!课程设计1综合了之前所有知识,绝对是一个很好的提高点。 11/26 15:58
- [lwbfq] 博主继续努力。 11/26 15:18
- [sunzcpson] 嗯 11/09 00:19
- [martian] 博主的程序执行没有问题,不过可以适当的添加注释,方便理解程序。 11/08 18:27
[2008-12-15 12:19] 实验16:编写包含多个功能子程序的例程
阅读全文 |
评论次数(1) |
浏览次数(568) |
所属类型(汇编作业)
[2008-12-10 13:43] 实验15:安装新的int 9中断例程
assume cs:code
code segment
begin:
mov ax,cs
mov ds,ax ;源
mov ax,0
mov es,ax ;目的
mov si,offset int9 ;获取int9中断例程偏移地址
mov di,204h
mov cx,offset int9end-offset int9 ;获取int9中断例程字节大小
cld ;方向为正
rep movsb ;传送
push es:[9*4]
pop es:[200h]
push es:[9*4+2]
pop es:[202h] ;把原int9中断地址放...
code segment
begin:
mov ax,cs
mov ds,ax ;源
mov ax,0
mov es,ax ;目的
mov si,offset int9 ;获取int9中断例程偏移地址
mov di,204h
mov cx,offset int9end-offset int9 ;获取int9中断例程字节大小
cld ;方向为正
rep movsb ;传送
push es:[9*4]
pop es:[200h]
push es:[9*4+2]
pop es:[202h] ;把原int9中断地址放...
阅读全文 |
评论次数(2) |
浏览次数(498) |
所属类型(汇编作业)
[2008-12-09 13:35] 实验14:访问CMOS RAM
assume cs:code
data segment
db "y!y!/!m!m!/!d!d! !h!h!:!m!m!:!s!s!" ;格式化日期时间,(!号为颜色00100001b,绿底蓝字)
data ends
code segment
begin:
mov ax,data
mov ds,ax
mov si,0
mov al,9 ;设置CMOS RAM的单元
call s
mov byte ptr ds:[0],ah
mov byte ptr ds:[2],al ;暂存在数据区
mov al,8
call s
mov byte ptr...
data segment
db "y!y!/!m!m!/!d!d! !h!h!:!m!m!:!s!s!" ;格式化日期时间,(!号为颜色00100001b,绿底蓝字)
data ends
code segment
begin:
mov ax,data
mov ds,ax
mov si,0
mov al,9 ;设置CMOS RAM的单元
call s
mov byte ptr ds:[0],ah
mov byte ptr ds:[2],al ;暂存在数据区
mov al,8
call s
mov byte ptr...
阅读全文 |
评论次数(1) |
浏览次数(487) |
所属类型(汇编作业)
[2008-11-26 01:46] 课程设计1
assume cs:code,ss:stack
data segment
db "1975","1976","1977","1978","1979","1980","1981","1982","1983"
db "1984","1985","1986","1987","1988","1989","1990","1991","1992"
db "1993","1994","1995"
;年份
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,1975...
data segment
db "1975","1976","1977","1978","1979","1980","1981","1982","1983"
db "1984","1985","1986","1987","1988","1989","1990","1991","1992"
db "1993","1994","1995"
;年份
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,1975...
阅读全文 |
评论次数(2) |
浏览次数(582) |
所属类型(汇编作业)
[2008-11-06 22:54] 实验七
assume cs:code,ds:data,es:table,ss:stack
data segment
db "1975","1976","1977","1978","1979","1980","1981","1982","1983"
db "1984","1985","1986","1987","1988","1989","1990","1991","1992"
db "1993","1994","1995"
dd 16,22,382,1356,2369,8000,16000,24486,50065,97479,140417,197514...
data segment
db "1975","1976","1977","1978","1979","1980","1981","1982","1983"
db "1984","1985","1986","1987","1988","1989","1990","1991","1992"
db "1993","1994","1995"
dd 16,22,382,1356,2369,8000,16000,24486,50065,97479,140417,197514...
阅读全文 |
评论次数(2) |
浏览次数(585) |
所属类型(汇编作业)