这个实验很简单,但是测试却发生困难,因为我没有纯DOS实模式环境,所以只好又写了一个小程序,通过在执行小程序的时候来测试本实验
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,128
mov ax,cs
mov ds,ax
mov si,offset int9
mov ax,0
...
- [e142857] int al,71h 应该是 in al,71h 08/02 22:43
- [qiangzi] 正确 02/02 19:06
- [游客] 问好! 11/22 19:33
- [younggay] 回答正确。 11/18 13:57
- [younggay] 回答正确。 11/18 13:33
- [younggay] 学习任务完成OK。 11/18 13:28
- [yo_007] 谢谢mess的一直支持和鼓励,我会努力的 11/12 13:35
- [mess] 给博主踩踩,要加油啊,没有艰苦的努力,也就没有丰厚的成果。 11/12 11:14
- [mess] 给博主踩踩,要加油啊,没有艰苦的努力,也就没有丰厚的成果。 11/12 11:14
- [yo_007] 嗯,我会加油的 11/12 10:08
[2009-11-26 11:11] 实验15
阅读全文 |
评论次数(0) |
浏览次数(491) |
所属类型(汇编作业)
[2009-11-25 09:51] 我的实验14
这个实验思路很多
assume cs:code
code segment
str: db '??/??/?? ??:??:??',"$";定义一个字符串用来存放当前日期和时间
pos: db 9,8,7,4,2,0;定义一段数据,用来存放时间信息在CMOS中的位置
start: mov ax,cs
mov ds,ax
mov si,offset str
mov bx,offset pos
mov cx,6;要向字符串里填入6项数据,所以循环6次
s: mov al,[bx]
c...
assume cs:code
code segment
str: db '??/??/?? ??:??:??',"$";定义一个字符串用来存放当前日期和时间
pos: db 9,8,7,4,2,0;定义一段数据,用来存放时间信息在CMOS中的位置
start: mov ax,cs
mov ds,ax
mov si,offset str
mov bx,offset pos
mov cx,6;要向字符串里填入6项数据,所以循环6次
s: mov al,[bx]
c...
阅读全文 |
评论次数(2) |
浏览次数(585) |
所属类型(汇编作业)
[2009-11-24 14:36] 检测点14.2
编程,用加法和移位指令计算(ax)=(ax)*10。
思路:有2种情况:1、(ax)=(ax)*10不会溢出,那么代码很简单
mov bx,ax
shl ax,1
mov cl,3
shl bx,cl
add ax,bx
2、但如果(ax)=(ax)*10溢出了,那结果就不正确了,根据本题,重新写代码如下:
start: mov ax,0ffffh
mov bx,0;用来存储ax在加法过程中的值
mov dx,0;用来表示乘法后的高16位
mov cx,5;表示乘数,乘数=cx*2
mov di,ax ...
思路:有2种情况:1、(ax)=(ax)*10不会溢出,那么代码很简单
mov bx,ax
shl ax,1
mov cl,3
shl bx,cl
add ax,bx
2、但如果(ax)=(ax)*10溢出了,那结果就不正确了,根据本题,重新写代码如下:
start: mov ax,0ffffh
mov bx,0;用来存储ax在加法过程中的值
mov dx,0;用来表示乘法后的高16位
mov cx,5;表示乘数,乘数=cx*2
mov di,ax ...
阅读全文 |
评论次数(0) |
浏览次数(456) |
所属类型(汇编作业)
[2009-11-24 12:57] 检测点14.1
1、编程,读取CMOS RAM德2号单元的内容。
程序如下:
mov al,2
out 70h,al
int al,71h
2、编程,向CMOS RAM德2号单元写入0。
程序如下:
mov al,2
out 70h,al
mov al,0
out 71h,al...
程序如下:
mov al,2
out 70h,al
int al,71h
2、编程,向CMOS RAM德2号单元写入0。
程序如下:
mov al,2
out 70h,al
mov al,0
out 71h,al...
阅读全文 |
评论次数(2) |
浏览次数(1294) |
所属类型(汇编作业)
[2009-11-24 11:12] 实验13-3
code segment
assume cs:code
s1: db 'Good,better,best,','$'
s2: db 'Never let it rest,','$'
s3: db 'Till good is better,','$'
s4: db 'And better,best.','$'
s: dw offset s1,offset s2,offset s3,offset s4
row: db 2,4,6,8
start: mov ax,cs
mov ds,ax
mov b...
assume cs:code
s1: db 'Good,better,best,','$'
s2: db 'Never let it rest,','$'
s3: db 'Till good is better,','$'
s4: db 'And better,best.','$'
s: dw offset s1,offset s2,offset s3,offset s4
row: db 2,4,6,8
start: mov ax,cs
mov ds,ax
mov b...
阅读全文 |
评论次数(0) |
浏览次数(417) |
所属类型(汇编作业)
[2009-11-24 11:01] 实验13-2
这个实验很简单
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset lp
mov ax,0
mov es,ax
mov di,200h
mov cx,offset lpend-offset lp
cld
rep movsb
mov ax,0
mov es,ax
mov wor...
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset lp
mov ax,0
mov es,ax
mov di,200h
mov cx,offset lpend-offset lp
cld
rep movsb
mov ax,0
mov es,ax
mov wor...
阅读全文 |
评论次数(0) |
浏览次数(421) |
所属类型(汇编作业)
[2009-11-23 16:07] 实验13-1的思路3
这种思路因为调用int 21h中断例程的9号子程序,但该子程序没有对字符串的显示颜色设置参数,所以显示的字符串只能是原色的
;编写并安装int 7ch中断例程
;功能为显示一个用0结束的字符串,中断例程安装在0:200处
;参数:(dh)=行号,(dl)=列号,(cl)=颜色;ds:si指向字符串首地址
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset showstr
mov ax,0
mov es,ax ...
;编写并安装int 7ch中断例程
;功能为显示一个用0结束的字符串,中断例程安装在0:200处
;参数:(dh)=行号,(dl)=列号,(cl)=颜色;ds:si指向字符串首地址
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset showstr
mov ax,0
mov es,ax ...
阅读全文 |
评论次数(0) |
浏览次数(402) |
所属类型(汇编作业)
[2009-11-23 15:26] 实验13-1的思路2
;编写并安装int 7ch中断例程
;功能为显示一个用0结束的字符串,中断例程安装在0:200处
;参数:(dh)=行号,(dl)=列号,(cl)=颜色;ds:si指向字符串首地址
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset showstr
mov ax,0
mov es,ax
mov di,200h
mov cx,offset showstrend-offset sho...
;功能为显示一个用0结束的字符串,中断例程安装在0:200处
;参数:(dh)=行号,(dl)=列号,(cl)=颜色;ds:si指向字符串首地址
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset showstr
mov ax,0
mov es,ax
mov di,200h
mov cx,offset showstrend-offset sho...
阅读全文 |
评论次数(0) |
浏览次数(425) |
所属类型(汇编作业)
[2009-11-23 14:51] 实验13-1的思路1
;编写并安装int 7ch中断例程
;功能为显示一个用0结束的字符串,中断例程安装在0:200处
;参数:(dh)=行号,(dl)=列号,(cl)=颜色;ds:si指向字符串首地址
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset showstr
mov ax,0
mov es,ax
mov di,200h
mov cx,offset showstrend-offset sho...
;功能为显示一个用0结束的字符串,中断例程安装在0:200处
;参数:(dh)=行号,(dl)=列号,(cl)=颜色;ds:si指向字符串首地址
code segment
assume cs:code
start: mov ax,cs
mov ds,ax
mov si,offset showstr
mov ax,0
mov es,ax
mov di,200h
mov cx,offset showstrend-offset sho...
阅读全文 |
评论次数(0) |
浏览次数(425) |
所属类型(汇编作业)
[2009-11-23 14:38] 对实验13-1的思考
对实验13-1的int 7ch中断例程的思路应该有3种:
1、把以前的show_str子程序稍微作修改,还是依次把ds:si的字符串的字符一个一个写入显示缓冲区,在没有学习到13章的时候只能采用这种思路;
2、调用BIOS的int 10h中断例程的2号和9号子程序;
3、调用DOS的int 21h中断例程的9号子程序。
下面,我将分别把3种思路int 7ch中断例程的代码写出来...
1、把以前的show_str子程序稍微作修改,还是依次把ds:si的字符串的字符一个一个写入显示缓冲区,在没有学习到13章的时候只能采用这种思路;
2、调用BIOS的int 10h中断例程的2号和9号子程序;
3、调用DOS的int 21h中断例程的9号子程序。
下面,我将分别把3种思路int 7ch中断例程的代码写出来...
阅读全文 |
评论次数(0) |
浏览次数(414) |
所属类型(汇编作业)
『 查看更多文章 』