assume cs:code
code segment
start: mov ax,code
mov ds,ax
mov si,offset do_start
mov ax,0
mov es,ax
mov di,200h
mov cx,offset do_end - offset do_start
cld
rep movsb
mov ax,0
mov es,ax
mov word ptr es:[7ch*4],200h
mov word ptr es:[7ch*4+2],0
mov ah,0
int 7ch
...
- [游客] 没问题。 05/28 16:48
- [游客] 恩。 其实有些事情想着简单,但是实际坐起来还是会有一点点问题的。 05/25 15:03
- [游客] 这次别人该拷你的了。 05/25 15:03
- [游客] 你好聪明啊 05/25 13:23
- [jiangnii] 呵呵,课程设计,像回到了学校一样,不过那时候基本都是拷别人的代码。。 05/24 21:23
- [游客] 回答的没问题。 05/24 17:52
- [游客] 正确。 05/24 17:51
- [游客] 正确。 05/24 17:50
- [游客] 是这么回事。 呵呵 05/24 17:50
- [游客] 没问题。 05/24 17:49
[2010-06-06 23:04] 汇编语言 实验16
阅读全文 |
评论次数(0) |
浏览次数(467) |
所属类型(汇编作业)
[2010-06-05 23:44] 汇编语言 第16章检测点
检测点16.1
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 word ptr b[0],ax
adc word ptr b[2],0
add si,2
loop s
mov ax,4c00h
int 21h
code ends
end start
检测点16.2
assume cs:code,es:data
data segment
a db 1,2,3...
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 word ptr b[0],ax
adc word ptr b[2],0
add si,2
loop s
mov ax,4c00h
int 21h
code ends
end start
检测点16.2
assume cs:code,es:data
data segment
a db 1,2,3...
阅读全文 |
评论次数(0) |
浏览次数(458) |
所属类型(汇编作业)
[2010-05-30 20:37] 汇编语言 实验15
程序执行后,按debug下运行可看到效果,但从控制台直接运行后按a键却没变化,感觉很奇怪(PS:上论坛看了看其它帖子,原来与cmd有关,用command.com运行程序就可以正确显示)
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 ax,0
mov es,ax
mov si,offset int9
mov ...
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 ax,0
mov es,ax
mov si,offset int9
mov ...
阅读全文 |
评论次数(0) |
浏览次数(464) |
所属类型(汇编作业)
[2010-05-30 17:57] 汇编语言 第15章检测点
(1) 去掉设置标志寄存器的代码,改为:
pushf
call dword ptr ds:[0]
(2) 在修改中断程序入口地址的地方增加cli、sti,截取如下:
...
cli
mov word ptr es:[9*4],offset int9
mov word ptr es:[9*4+2],cs
sti
...
cli
push ds:[0]
pop es:[9*4]
push ds:[2]
pop es:[9*4+2]
sti
......
pushf
call dword ptr ds:[0]
(2) 在修改中断程序入口地址的地方增加cli、sti,截取如下:
...
cli
mov word ptr es:[9*4],offset int9
mov word ptr es:[9*4+2],cs
sti
...
cli
push ds:[0]
pop es:[9*4]
push ds:[2]
pop es:[9*4+2]
sti
......
阅读全文 |
评论次数(0) |
浏览次数(580) |
所属类型(汇编作业)
[2010-05-30 17:03] 汇编语言 实验14
assume cs:code
code segment
start: mov ax,0
mov al,9
mov dh,12
mov dl,35
call view_cmos ;显示年
mov ah,'/'
add dl,2
call view_ah
mov al,8
inc dl
call view_cmos ;显示月
mov ah,'/'
add dl,2
call view_ah
mov al,7
inc dl
call view_cmos ;显示日
mov ah,' ' ...
code segment
start: mov ax,0
mov al,9
mov dh,12
mov dl,35
call view_cmos ;显示年
mov ah,'/'
add dl,2
call view_ah
mov al,8
inc dl
call view_cmos ;显示月
mov ah,'/'
add dl,2
call view_ah
mov al,7
inc dl
call view_cmos ;显示日
mov ah,' ' ...
阅读全文 |
评论次数(0) |
浏览次数(461) |
所属类型(汇编作业)
[2010-05-30 15:57] 汇编语言 第14章检测点
检测点 14.1
(1) 读取cmos ram 2号单元的内容,保存到al
mov al,2
out 70h,al
in al,71h
(2) 向cmos ram 2号单元写入0
mov al,2
out 70h,al
mov al,0
out 71h,al
检测点14.2
计算(ax)=(ax)*10=(ax)*8+(ax)*2
不考虑进位:
mov bx,ax
mov cl,3
shl ax,cl
shl bx,1
add ax,bx
考虑进位,用dx保存高位:
mov dx,0
mov bx,ax
mov cx,3...
(1) 读取cmos ram 2号单元的内容,保存到al
mov al,2
out 70h,al
in al,71h
(2) 向cmos ram 2号单元写入0
mov al,2
out 70h,al
mov al,0
out 71h,al
检测点14.2
计算(ax)=(ax)*10=(ax)*8+(ax)*2
不考虑进位:
mov bx,ax
mov cl,3
shl ax,cl
shl bx,1
add ax,bx
考虑进位,用dx保存高位:
mov dx,0
mov bx,ax
mov cx,3...
阅读全文 |
评论次数(0) |
浏览次数(533) |
所属类型(汇编作业)
[2010-05-30 15:11] 汇编语言 实验13
(1)
assume cs:code
code segment
start: mov ax,code
mov ds,ax
mov si,offset do_start
mov ax,0
mov es,ax
mov di,200h
mov cx,offset do_end - offset do_start
cld
rep movsb
mov ax,0
mov es,ax
mov word ptr es:[7ch*4],200h
mov word ptr es:[7ch*4+2],0
mov ax,4c00h
i...
assume cs:code
code segment
start: mov ax,code
mov ds,ax
mov si,offset do_start
mov ax,0
mov es,ax
mov di,200h
mov cx,offset do_end - offset do_start
cld
rep movsb
mov ax,0
mov es,ax
mov word ptr es:[7ch*4],200h
mov word ptr es:[7ch*4+2],0
mov ax,4c00h
i...
阅读全文 |
评论次数(0) |
浏览次数(511) |
所属类型(汇编作业)
[2010-05-28 11:14] 汇编语言 第12章检测点
忘发检测点了,补上
检测点12.1
(1) 3号中断源对应的中断处理程序的偏移地址为3*4,段地址为3*4+2,因此完整的入口地址为0070:018b
(2) N号中断源对应的终端处理程序的偏移地址为N*4,段地址为N*4+2...
检测点12.1
(1) 3号中断源对应的中断处理程序的偏移地址为3*4,段地址为3*4+2,因此完整的入口地址为0070:018b
(2) N号中断源对应的终端处理程序的偏移地址为N*4,段地址为N*4+2...
阅读全文 |
评论次数(1) |
浏览次数(664) |
所属类型(汇编作业)
[2010-05-26 22:32] 汇编语言 实验12
assume cs:code
code segment
start: mov ax,code
mov ds,ax
mov si,offset do0
mov ax,0
mov es,ax
mov di,200h
mov cx,offset do0end - offset do0
cld
rep movsb
mov ax,0
mov es,ax
mov word ptr es:[0*4],200h
mov word ptr es:[0*4+2],0
;下面是除法溢出的测试代码,直接写在这里方便测试
m...
code segment
start: mov ax,code
mov ds,ax
mov si,offset do0
mov ax,0
mov es,ax
mov di,200h
mov cx,offset do0end - offset do0
cld
rep movsb
mov ax,0
mov es,ax
mov word ptr es:[0*4],200h
mov word ptr es:[0*4+2],0
;下面是除法溢出的测试代码,直接写在这里方便测试
m...
阅读全文 |
评论次数(0) |
浏览次数(459) |
所属类型(汇编作业)
[2010-05-25 22:16] 汇编语言 实验11
assume cs:code
data segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends
code segment
start: mov ax,data
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc:
push si
s: cmp byte ptr [si],0
je ok
;小写字母的ascii码是97-122
cmp byte ptr [si...
data segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends
code segment
start: mov ax,data
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc:
push si
s: cmp byte ptr [si],0
je ok
;小写字母的ascii码是97-122
cmp byte ptr [si...
阅读全文 |
评论次数(0) |
浏览次数(477) |
所属类型(汇编作业)
『 查看更多文章 』