不用中断,单纯用子程序时满足功能需要。改用中断例程时出错。
代码如下:
assume cs:code
code segment
start:
mov ax,cs
mov ds,ax
mov si,offset int7c
mov ax,0
mov es,ax
mov di,200H
mov cx,offset int7c...


- [游客] 你的任务程序有多少字节? 10/10 17:48
- [游客] 段址要是指向你的中断程序所在段 段址要指向你的中断程序所在段 多一个字 顺便:http://w 10/04 09:09
- [游客] 提示: 1、修改7ch中断入口地址时,段址要是指向你的中断程序所在段,偏移是标号int7c处。 10/04 09:03
- [游客] 问题第一:这是你修改中断向量表的代码 cli mov word ptr es:[7ch 10/04 08:49
- [musicvs] 如果你不想看的话,那你试试在 mov ax,4c00H int 21H 后面加一句 o 09/20 20:57
- [musicvs] 嘻嘻~楼主跟我一样,我当时也想不出来,你看看我的方法(其实不是我自己想到的,呵呵) http:// 09/20 20:56
- [游客] 感觉乱七八糟,没发现安装程序啊。 09/12 17:13
- [mouse] 博主加油啊~ 建议一定要做好书上的检测点和实验,并且是自己独立做。 08/21 09:16
- [lwbfq] 书看起来很容易,但是真正吃透却很难。 08/07 14:51
- [xiaoqiang] 655360 即ax = 0 dx = 0aH 调用一次 divdw后 ax = 0 06/23 08:55
[2008-09-10 22:44]
这个中断例程安装程序错误在哪里?卡了好久,敬请大家指点。
阅读全文 |
评论次数(7) |
浏览次数(1245) |
所属类型(【三人行必有我师】)
[2008-08-06 16:29] 重新开始
之前的学习感觉不够深入,后面的知识就开始难以理解了。
现在决定重新开始,认真学习,一定要把基础打好。...
现在决定重新开始,认真学习,一定要把基础打好。...
阅读全文 |
评论次数(2) |
浏览次数(818) |
所属类型(默认类型)
[2008-06-21 14:24] 实验10子程序3的延伸,假设数为5937000.欢迎指点
;本程序仅为对实验10子程序3的延伸,假设数为5937000
assume cs:code
data segment
db 16 dup (9)
data ends
stack segment
db 16 dup (0)
stack ends
code segment
start:
mov ax,data
mov ds,ax
mov di,0
mov ax,stack
mov ss,ax
mov sp,16
m...
assume cs:code
data segment
db 16 dup (9)
data ends
stack segment
db 16 dup (0)
stack ends
code segment
start:
mov ax,data
mov ds,ax
mov di,0
mov ax,stack
mov ss,ax
mov sp,16
m...
阅读全文 |
评论次数(3) |
浏览次数(813) |
所属类型(【三人行必有我师】)
[2008-06-20 11:16] 【三人行必有我师】实验10子程序3通过,欢迎大家指点
assume cs:code
data segment
db 10 dup (9)
data ends
code segment
start:
mov ax,12666
mov bx,data
mov ds,bx
mov si,0
call dtoc
mov dh,...
data segment
db 10 dup (9)
data ends
code segment
start:
mov ax,12666
mov bx,data
mov ds,bx
mov si,0
call dtoc
mov dh,...
阅读全文 |
评论次数(0) |
浏览次数(645) |
所属类型(【三人行必有我师】)
[2008-06-19 12:08] 关于mul指令
课本P187:当相乘的两个数都是8位时,一个默认放在AH中,另一个放在8位寄存器中或内存字节单元中,结果默认放在AX中。
在debug中输入
mov ax,0102
mov bl,2
mul bl
得到的结果是ax=0004H
mov ax,0100
mov bl,2
mul bl
得到的结果是ax=0H
可以看出的确是默认放在AH中的。
但课本P185最下方的例子:mul byte ptr ds:[0] 含义为 (ax)=(al)*[(ds)*16+0],这应该是错误吧。
主要是看论坛时发现很多朋友们都是赋值给al的,也许是受到了这个错误例子的...
在debug中输入
mov ax,0102
mov bl,2
mul bl
得到的结果是ax=0004H
mov ax,0100
mov bl,2
mul bl
得到的结果是ax=0H
可以看出的确是默认放在AH中的。
但课本P185最下方的例子:mul byte ptr ds:[0] 含义为 (ax)=(al)*[(ds)*16+0],这应该是错误吧。
主要是看论坛时发现很多朋友们都是赋值给al的,也许是受到了这个错误例子的...
阅读全文 |
评论次数(2) |
浏览次数(657) |
所属类型(【三人行必有我师】)