- [mywiil] 我没用书上的入栈出栈写,就是先看看不用书上的方法能做出来否? ============== 不错 09/19 09:24
- [njutyangxiao] 谢谢你的指导 09/18 17:00
- [younggay] 嗯,应该说理解的没问题。 09/18 15:41
- [njutyangxiao] 检测点16.1的题目是中是这样定义的: a dw 1,2,3,4,5,6,7,8 b dd 09/16 11:23
- [njutyangxiao] 嗯,谢谢指导 09/16 11:22
- [wsrf] assume伪指令指定了段中标号与相应段寄存器的联系。 09/16 09:46
- [wsrf] 没有问题,不过源代码中 a db 1,2,3,4,5,6,7,8 b dw 0 怎么 09/16 09:43
- [njutyangxiao] 谢谢,keep moving! 09/16 09:06
- [njutyangxiao] 谢谢你的指导 09/16 09:05
- [njutyangxiao] 谢谢你的指导 09/16 09:05
[2009-09-22 23:04] 在虚拟机virtual pc中的dos不能单步调试
在虚拟机virtual pc中安装了dos7.1,也设置好了共享文件夹等功能,但是发现在里面debug 程序时,不能进行单步调试,有知道的请告诉我这是什么原因?现在这里谢过了!
有图片为证...
有图片为证...
阅读全文 |
评论次数(0) |
浏览次数(692) |
所属类型(Assembly's Road)
[2009-09-21 11:35] dos命令
1 dir
显示一个目录下的文件和子目录
dir/p-->是先显示一屏的内容后,停下来。等待你看完后在按任意键继续显示下一屏幕的内容
dir/w-->只显示目录内的文件和子目录,而不显示文件的生成时间和大小的话,就可使用dir/w
*和?的区别:*在文件命中出现时代表任意字符的意思,如a.*就代表了文件本命是a,扩展名是任意的文件。那dir a*.*会是什么结果呢?结果是显示文件基本名以a开头的所有文件。同理dir *.*是什么意思呢?就是现实该目录下的所有文件。而?只能替代文件名中的一个字符。比如a?.*是代表文件比本命只有两个字符,并且第一个字符时a的所有文件。
总结:dir命令...
显示一个目录下的文件和子目录
dir/p-->是先显示一屏的内容后,停下来。等待你看完后在按任意键继续显示下一屏幕的内容
dir/w-->只显示目录内的文件和子目录,而不显示文件的生成时间和大小的话,就可使用dir/w
*和?的区别:*在文件命中出现时代表任意字符的意思,如a.*就代表了文件本命是a,扩展名是任意的文件。那dir a*.*会是什么结果呢?结果是显示文件基本名以a开头的所有文件。同理dir *.*是什么意思呢?就是现实该目录下的所有文件。而?只能替代文件名中的一个字符。比如a?.*是代表文件比本命只有两个字符,并且第一个字符时a的所有文件。
总结:dir命令...
阅读全文 |
评论次数(0) |
浏览次数(1447) |
所属类型(DOS笔记)
[2009-09-21 10:15] dos启动
电脑刚启动时,要先从某个磁盘上将一些系统程序读入内存后才能正常工作,这个磁盘就叫启动盘。
通常,用A盘或c盘作为启动盘。制作启动盘需要使用sys命令。
dos系统启动时,要先从启动盘中读取两个系统文件IO.SYS MSDOS.SYS,然后在启动盘的根目录下寻找并执行CONFIG.SYS COMMAND.COM AUTOEXEC.BAT三个文件。其中IO.SYS MSDOS.SYS COMMAND.COM这三个文件缺一不可,否则电脑将无法启动。CONFIG.SYS 和ATUOEXEC.BAT这两个文件是用来配置系统运行环境和自动执行一些命令,他们对电脑的运行性能以及许多设备的驱动都起到了至关...
通常,用A盘或c盘作为启动盘。制作启动盘需要使用sys命令。
dos系统启动时,要先从启动盘中读取两个系统文件IO.SYS MSDOS.SYS,然后在启动盘的根目录下寻找并执行CONFIG.SYS COMMAND.COM AUTOEXEC.BAT三个文件。其中IO.SYS MSDOS.SYS COMMAND.COM这三个文件缺一不可,否则电脑将无法启动。CONFIG.SYS 和ATUOEXEC.BAT这两个文件是用来配置系统运行环境和自动执行一些命令,他们对电脑的运行性能以及许多设备的驱动都起到了至关...
阅读全文 |
评论次数(0) |
浏览次数(692) |
所属类型(DOS笔记)
[2009-09-21 00:43] 实验17初稿
assume cs:codesg
datasg segment
fun_table dw fun0,fun1,fun2,input,error,space
fun0 db ' 0 read floopy','$'
fun1 db ' 1 read floopy','$'
fun2 db ' 2 exit program','$'
input db ' Please input the number[0,1,2]:','$'
error db ' Error ,Notice:the number is 0,1 or ...
datasg segment
fun_table dw fun0,fun1,fun2,input,error,space
fun0 db ' 0 read floopy','$'
fun1 db ' 1 read floopy','$'
fun2 db ' 2 exit program','$'
input db ' Please input the number[0,1,2]:','$'
error db ' Error ,Notice:the number is 0,1 or ...
阅读全文 |
评论次数(1) |
浏览次数(694) |
所属类型(Assembly's Road)
[2009-09-20 08:53] 在虚拟机vmware下安装好dos后,在里面写好程序后,如何进行编译?
急急急!在虚拟机vmware下安装好dos后,在里面写好程序后,如何进行编译?或者如何把编译好的文件拷贝进dos里面去。请各位帮忙解答,在这里先谢过了!!...
阅读全文 |
评论次数(0) |
浏览次数(772) |
所属类型(汇编作业)
[2009-09-19 21:11] 17.3字符串的接收、显示以及删除(2)
题目:编程,编写一个接受字符串输入的程序,应该有如下功能:
(1)在输入的同时需要显示这个字符串
(2)一般在输入回车符后,字符串输入结束
(3)能够删除已经输入的字符
解答:只是写个测试程序而已
assume cs:codesg,ds:datasg
datasg segment
db 4000 dup(0)
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax
mov si,0
mo...
(1)在输入的同时需要显示这个字符串
(2)一般在输入回车符后,字符串输入结束
(3)能够删除已经输入的字符
解答:只是写个测试程序而已
assume cs:codesg,ds:datasg
datasg segment
db 4000 dup(0)
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax
mov si,0
mo...
阅读全文 |
评论次数(1) |
浏览次数(720) |
所属类型(汇编作业)
[2009-09-18 17:04] 17.3字符串的接收、显示以及删除(1)
题目:编程,编写一个接受字符串输入的程序,应该有如下功能:
(1)在输入的同时需要显示这个字符串
(2)一般在输入回车符后,字符串输入结束
(3)能够删除已经输入的字符
分析:我没用书上的入栈出栈写,就是先看看不用书上的方法能做出来否?实现过程在源代码中有详细的分析。
源代码:
assume cs:codesg
datasg segment
db 1024 dup(0)
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax
mov s...
(1)在输入的同时需要显示这个字符串
(2)一般在输入回车符后,字符串输入结束
(3)能够删除已经输入的字符
分析:我没用书上的入栈出栈写,就是先看看不用书上的方法能做出来否?实现过程在源代码中有详细的分析。
源代码:
assume cs:codesg
datasg segment
db 1024 dup(0)
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax
mov s...
阅读全文 |
评论次数(1) |
浏览次数(980) |
所属类型(Assembly's Road)
[2009-09-17 19:40] 检测点17.1
题目:在int 16h中断例程中,一定要设置IF=1的指令。这种说法是对的吗?
解答:开始的时候,感觉这句话应该是错的,当时是想int 16h只是从键盘缓冲区中读取数据,应该是可以不用设置IF的。但是这种说法只有在键盘数据缓冲区中有数据时正确。然而我们不能确保键盘缓冲区中会一直有数据,如果没有键盘缓冲区中没有数据,那马将会造成死锁。所以我们还是要设置IF=1使得能够响应int 9的中断。便于int 9向键盘缓冲区中写入数据,以便int 16h能个取得键盘缓冲区中的数据。
综上所述,此句话的说法是正确的。...
解答:开始的时候,感觉这句话应该是错的,当时是想int 16h只是从键盘缓冲区中读取数据,应该是可以不用设置IF的。但是这种说法只有在键盘数据缓冲区中有数据时正确。然而我们不能确保键盘缓冲区中会一直有数据,如果没有键盘缓冲区中没有数据,那马将会造成死锁。所以我们还是要设置IF=1使得能够响应int 9的中断。便于int 9向键盘缓冲区中写入数据,以便int 16h能个取得键盘缓冲区中的数据。
综上所述,此句话的说法是正确的。...
阅读全文 |
评论次数(2) |
浏览次数(974) |
所属类型(汇编作业)
[2009-09-17 19:19] 第十七章第二节题
题目:编程,接受用户的键盘输入,输入‘r’,将屏幕上的字符设置为红色;输入‘g’,将屏幕上的字符设置为绿色;输入‘b’时,将屏幕上的字符设置为蓝色。
源代码:
assume cs:codesg
codesg segment
start:
mov ax,0
int 16h;调用int 16h的0号功能读取键盘输入的字符,输入的字符的ascii码放在了al中,ah中放的是扫面码
cmp al,72h;如果是字母‘r’,则跳转到show_red处
je show_red
cmp al,67h;如果是字母‘g’,则跳...
源代码:
assume cs:codesg
codesg segment
start:
mov ax,0
int 16h;调用int 16h的0号功能读取键盘输入的字符,输入的字符的ascii码放在了al中,ah中放的是扫面码
cmp al,72h;如果是字母‘r’,则跳转到show_red处
je show_red
cmp al,67h;如果是字母‘g’,则跳...
阅读全文 |
评论次数(0) |
浏览次数(659) |
所属类型(Assembly's Road)
[2009-09-17 14:07] 16实验
编写包含多个功能子程序的中断例程
安装一个新的int 7ch中断例程,为显示输出提供如下功能子程序:
(1)清屏
(2)设置前景色
(3)设置背景色
(4)向上滚动一行
入口参数说明:
(1)用ah寄存器传递功能号:0表示清屏,1表示设置前景色,2表示设置背景色,3表示向上滚动一行;
(2)对于2、3号功能,用al传送颜色值,(al)取值范围为[0,1,2,3,4,5,6,7]
分析:对于本实验,第一点是:各个子程序的编写,这并不难,参考书上很轻松就能搞定。第二点是:设置int 7ch的中断向量表项是关键,刚开始我也发现是调用时子程序的地...
安装一个新的int 7ch中断例程,为显示输出提供如下功能子程序:
(1)清屏
(2)设置前景色
(3)设置背景色
(4)向上滚动一行
入口参数说明:
(1)用ah寄存器传递功能号:0表示清屏,1表示设置前景色,2表示设置背景色,3表示向上滚动一行;
(2)对于2、3号功能,用al传送颜色值,(al)取值范围为[0,1,2,3,4,5,6,7]
分析:对于本实验,第一点是:各个子程序的编写,这并不难,参考书上很轻松就能搞定。第二点是:设置int 7ch的中断向量表项是关键,刚开始我也发现是调用时子程序的地...
阅读全文 |
评论次数(0) |
浏览次数(730) |
所属类型(汇编作业)
『 查看更多文章 』