assume cs:code
code segment
start:
mov ax,code
mov ds,ax
mov si,offset int7ch
mov ax,0
mov es,ax
mov di,200h
mov cx,offset int7chend-offset int7ch
cld
rep movsb
cli
mov word ptr es:[4*7ch],200h
...
- [qingpengchen2011] 我的子程序是没错的,我在想是不是虚拟机的问题 08/08 12:17
- [qingpengchen2011] 嗯~行。我再认真详细看看,谢谢咯 08/08 10:38
- [tomato] 我运行了,不是地址的问题。也没有出现崩溃的现象,不过有的子程序功能好像不太对。子程序书中都有,建议你 08/07 22:07
- [tomato] 还是不行吗?我帮你看一下。 08/07 21:29
- [qingpengchen2011] table等标志的值都是在此安装程序中的偏移地址,所以那些子程序等等的地址都是要重新计算的。这点我倒 08/07 18:10
- [qingpengchen2011] table dw sub0-int7ch+200h,sub1-int7ch+200h,sub2-in 08/07 18:06
- [qingpengchen2011] table dw sub0-int7ch+200h,sub1-int7ch+200h,sub2-in 08/07 18:06
- [tomato] 结果也贴上来晾凉吧。 08/05 23:49
- [tomato] 我看不是死循环的问题,是子程序入口地址错了。告诉你一个解决思路,就是单步跟踪读取子程序地址那个地方, 08/05 23:45
- [tomato] 很有可能是你程序的问题,检查一下是不是死循环了。 08/05 23:41
[2011-08-04 23:33] 实验十六。这个实验基础完成,但是有一点不明白,就是我在虚拟机纯DOS下运行后,过一段时候,虚拟机就会崩溃,WHY。。。
阅读全文 |
评论次数(9) |
浏览次数(781) |
所属类型(汇编作业)
[2011-08-04 19:01] 实验十五~。~
assume cs:code,ss:stack
stack segment
db 16 dup(0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,16
mov ax,code
mov ds,ax
mov si,offset int9A ;设置数据源
mov ax,0
mov es,ax
mov di,204h ;设置程序存放的地址
mov ...
stack segment
db 16 dup(0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,16
mov ax,code
mov ds,ax
mov si,offset int9A ;设置数据源
mov ax,0
mov es,ax
mov di,204h ;设置程序存放的地址
mov ...
阅读全文 |
评论次数(1) |
浏览次数(695) |
所属类型(汇编作业)
[2011-08-03 14:17] 实验十四
assume cs:code
code segment
s: db 9,8,7,4,2,0
start:
mov ax,cs
mov ds,ax
mov bx,offset s
mov dx,0b800h
mov es,dx
mov si,160*12+2*12
mov cx,6
circle:
push cx
mov al,[bx]
out 70h,al
in al,71h
...
code segment
s: db 9,8,7,4,2,0
start:
mov ax,cs
mov ds,ax
mov bx,offset s
mov dx,0b800h
mov es,dx
mov si,160*12+2*12
mov cx,6
circle:
push cx
mov al,[bx]
out 70h,al
in al,71h
...
阅读全文 |
评论次数(2) |
浏览次数(579) |
所属类型(汇编作业)
[2011-08-01 20:13] 实验十二,0号中断
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 word ptr es:[0*4],200h
mov word ptr es:[0*4+2],0;...
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 word ptr es:[0*4],200h
mov word ptr es:[0*4+2],0;...
阅读全文 |
评论次数(1) |
浏览次数(494) |
所属类型(汇编作业)
[2011-07-31 13:07] 实验十一,
assume cs:code
date segment
db "Beginer's All-purpose Symbolic Instruction Code.",0
date ends
code segment
start:
mov ax,date
mov ds,ax
mov si,0
call letter
mov ax,4c00h
int 21h
letter:
push cx
push si
mov ch,0
...
date segment
db "Beginer's All-purpose Symbolic Instruction Code.",0
date ends
code segment
start:
mov ax,date
mov ds,ax
mov si,0
call letter
mov ax,4c00h
int 21h
letter:
push cx
push si
mov ch,0
...
阅读全文 |
评论次数(2) |
浏览次数(479) |
所属类型(汇编作业)
[2011-07-30 13:55] 为课程设计1准备的显示dword型数据的子程序
assume cs:code,ds:date
date segment
dw 16 dup(0)
date ends
code segment
start:
mov ax,date
mov ds,ax
mov si,0
mov dx,0013h
mov ax,2884h
call dwordtoc
mov dh,0
mov dl,0
mov cx,2
call show_str
mov...
date segment
dw 16 dup(0)
date ends
code segment
start:
mov ax,date
mov ds,ax
mov si,0
mov dx,0013h
mov ax,2884h
call dwordtoc
mov dh,0
mov dl,0
mov cx,2
call show_str
mov...
阅读全文 |
评论次数(1) |
浏览次数(503) |
所属类型(汇编作业)
[2011-07-30 13:19] 实验十,编写子程序3 ,字串的显示 望大家指正,~。~
由于题目要求将一个word型数据转变为十进制的字符串,因为在进行除法运算的时候有可能会发生除法溢出,因此,调用了一个不会产生溢出的16除法。。完整程序如下,希望大家指正
assume cs:code,ds:date
date segment
dw 8 dup(0)
date ends
code segment
start:
mov ax,date
mov ds,ax
mov si,0
mov ax,0ffffh
call dtoc ;转化为字串
mov dh,0;行
mov dl,0;列...
assume cs:code,ds:date
date segment
dw 8 dup(0)
date ends
code segment
start:
mov ax,date
mov ds,ax
mov si,0
mov ax,0ffffh
call dtoc ;转化为字串
mov dh,0;行
mov dl,0;列...
阅读全文 |
评论次数(0) |
浏览次数(505) |
所属类型(汇编作业)
[2011-07-30 12:52] 处理16位除法溢出子程序。
assume cs:code
code segment
start:
mov ax,0ffffh
mov bl,10
call divword
mov ax,4c00h
int 21h
;divword program
;功能,进行不会产生溢出的除法运算,被除数为word型,除数为8位,结果为word型
;参数 (ax)=被除数 (bl)=除数
; 返回 (ah)=结果的高8位,(al)...
code segment
start:
mov ax,0ffffh
mov bl,10
call divword
mov ax,4c00h
int 21h
;divword program
;功能,进行不会产生溢出的除法运算,被除数为word型,除数为8位,结果为word型
;参数 (ax)=被除数 (bl)=除数
; 返回 (ah)=结果的高8位,(al)...
阅读全文 |
评论次数(0) |
浏览次数(465) |
所属类型(汇编作业)
[2011-07-29 19:15] 泪流满面的实验十子程序二啊~。~
好吧。。由于我对于公式的笨蛋理解。。把几行可以搞定的代码型成好几十行才搞定。。- -!
这是在本论坛看了,理解后的。。。非常感觉这个地方呀。让我学习到很多~
assume cs:code,ss:stack
stack segment
dw 8 dup(0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,16
mov ax,4241h
mov dx,000fh
mov cx,0ah
call ...
这是在本论坛看了,理解后的。。。非常感觉这个地方呀。让我学习到很多~
assume cs:code,ss:stack
stack segment
dw 8 dup(0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,16
mov ax,4241h
mov dx,000fh
mov cx,0ah
call ...
阅读全文 |
评论次数(4) |
浏览次数(549) |
所属类型(汇编作业)
[2011-07-29 18:43] 修改版的实验十,子程序二
assume cs:code,ss:stack
stack segment
dw 8 dup(0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,16
mov ax,4241h
mov dx,000fh
mov cx,0ah
call divdw
mov ax,4c00h
int 21h
; the divdw
...
stack segment
dw 8 dup(0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,16
mov ax,4241h
mov dx,000fh
mov cx,0ah
call divdw
mov ax,4c00h
int 21h
; the divdw
...
阅读全文 |
评论次数(0) |
浏览次数(497) |
所属类型(汇编作业)
『 查看更多文章 』