- [游客] 你说的就是传说中的易语言么?(*^__^*) 嘻嘻…… 03/22 21:44
- [taotling] 你啊,肯定是太贪快,所以细节上的东西没注意。。。。 来晚了,报个到。 04/09 23:46
- [wdm] mov es:[di],cx ;原来是mov es:[di],cl mov es:[ 04/09 15:11
- [wdm] 看到内存b850:0006处的变化真的很奇怪 ============= 数据必然都是你些进入的 04/09 14:41
- [wdm] 我不明白为什么sp=4的时候,用t单步就会错?明明堆栈还有2个字的空间啊?! --------- 04/09 14:34
- [wdm] 书里哪里说过吗?还有没什么会出现这个情况?按理说,堆栈不是还有2个字的位置吗? ========= 04/09 14:30
- [hantangtianxia] debug跟踪的问题 如果直接运行或debug g命令 执行,不会出问题 04/08 23:17
- [rsice] wdm:博主看看这里的sp的值,mov dx,0000后的T命令的时候,你的sp只剩下4了,记得前面 04/08 23:12
- [游客] 功能子程序dtoc中应该添加保护现场和恢复现场语句序列! 答:确实没有保护现场,我觉得可能下面的 04/08 21:18
- [游客] 将行偏移添加到了段地址中?!应该把行、列偏移都放在偏移地址寄存器di中。 答:是这样的,我是把行 04/08 21:17
[2008-04-08 23:08] 终于完成了实验10子程序3:显示字符串!真实不容易啊!
说说这个程序的情况,虽然完成了,但是又留给了我两个难题!
第一个是wdm指出的:“由于sp值过小,在debug下的T单步跟踪时候出错的情况”,我按照这个把堆栈扩大,果然我在上一篇文章中令我百思不得其解的问题表面上解决了,但是我不明白为什么sp=4的时候,用t单步就会错?明明堆栈还有2个字的空间啊?!
第二个是这个程序,我沿用原来现成的show_str子程序,无法正确显示字符串,但我认为应该是能行得通的,但我调试的时候,看到内存b850:0006处的变化真的很奇怪,我修改了一下,问题虽然解决,但是我也想不通为什么,我准备再研究研究,同学们也请帮帮我!我在下面的语句中,把我原来的语句作为注释放...
第一个是wdm指出的:“由于sp值过小,在debug下的T单步跟踪时候出错的情况”,我按照这个把堆栈扩大,果然我在上一篇文章中令我百思不得其解的问题表面上解决了,但是我不明白为什么sp=4的时候,用t单步就会错?明明堆栈还有2个字的空间啊?!
第二个是这个程序,我沿用原来现成的show_str子程序,无法正确显示字符串,但我认为应该是能行得通的,但我调试的时候,看到内存b850:0006处的变化真的很奇怪,我修改了一下,问题虽然解决,但是我也想不通为什么,我准备再研究研究,同学们也请帮帮我!我在下面的语句中,把我原来的语句作为注释放...
阅读全文 |
评论次数(4) |
浏览次数(874) |
所属类型(汇编作业)
[2008-04-07 23:09] 我快崩溃了!求救!实验10子程序3:显示字符串我始终不成功,同学们帮忙看看!
我先说说情况:这个程序可以编译通过,但是执行错误。错误的语句我在注释中表出来,先不说我的方法好不好,我也知道方法太烦,但我想先解决错误。
assume cs:code,ds:data,ss:stack
data segment
db 10 dup (0)
data ends
stack segment
db 16 dup (0)
stack ends
code segment
start: mov bx,data
mov ds,bx
mov si,0
mov ax,stack
mo...
assume cs:code,ds:data,ss:stack
data segment
db 10 dup (0)
data ends
stack segment
db 16 dup (0)
stack ends
code segment
start: mov bx,data
mov ds,bx
mov si,0
mov ax,stack
mo...
阅读全文 |
评论次数(15) |
浏览次数(1046) |
所属类型(汇编作业)
[2008-04-03 23:51] 王爽汇编语言第10章实验10子程序2:不会溢出的除法
;divdw
;进行不会溢出的除法运算
;(ax)=dword型数据的低16位,(dx)=dword型数据的高16位,(cx)=除数
;返回:(dx)=结果的高16位,(ax)=结果的低16位,(cx)=余数
assume cs:codesg,ss:stack
stack segment
db 16 dup (0)
stack ends
codesg segment
start: mov ax,stack
mov ss,ax
mov sp,10h
mov ax,4240h
...
;进行不会溢出的除法运算
;(ax)=dword型数据的低16位,(dx)=dword型数据的高16位,(cx)=除数
;返回:(dx)=结果的高16位,(ax)=结果的低16位,(cx)=余数
assume cs:codesg,ss:stack
stack segment
db 16 dup (0)
stack ends
codesg segment
start: mov ax,stack
mov ss,ax
mov sp,10h
mov ax,4240h
...
阅读全文 |
评论次数(2) |
浏览次数(642) |
所属类型(汇编作业)
[2008-04-01 23:20] 王爽汇编语言第10章实验10子程序1:显示字符串
;王爽实验10,编写显示字符串子程序
;(dh)=行号,取值范围0~24
;(dl)=列号,取值范围0~79
;(cl)=颜色,ds:si指向字符串的首地址
; 例子:在屏幕第8行,3列,用绿色显示data段中的字符串
assume cs:code,ds:data,ss:stack
data segment
db 'Welcome to masm!',0
data ends
stack segment
db 16 dup (0)
stack ends
code segment
start: mov ax,data
mov ds,ax
...
;(dh)=行号,取值范围0~24
;(dl)=列号,取值范围0~79
;(cl)=颜色,ds:si指向字符串的首地址
; 例子:在屏幕第8行,3列,用绿色显示data段中的字符串
assume cs:code,ds:data,ss:stack
data segment
db 'Welcome to masm!',0
data ends
stack segment
db 16 dup (0)
stack ends
code segment
start: mov ax,data
mov ds,ax
...
阅读全文 |
评论次数(4) |
浏览次数(682) |
所属类型(汇编作业)
[2008-03-16 18:35] 实验9我的写法:不用堆栈、一次循环、代码短
我觉得的我的写法很短,很简单。我开始写的时候也考虑用堆栈,但后来发现没有必要。我写完了看答案,写法用了堆栈,用了三次循环,我觉得比我的复杂。我是新搬家来的,请多指点。大家看效果:
;王爽实验9
assume cs:codesg,ds:datasg
datasg segment
db 'welcome to masm!'
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax
mov ax,0b864h
mov...
;王爽实验9
assume cs:codesg,ds:datasg
datasg segment
db 'welcome to masm!'
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax
mov ax,0b864h
mov...
阅读全文 |
评论次数(4) |
浏览次数(656) |
所属类型(汇编作业)
页码数(1):
1