鱼C论坛

 找回密码
 立即注册
查看: 2361|回复: 3

汇编语言30

[复制链接]
发表于 2012-4-16 17:16:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
关于段中 利用栈将一组数据逆序存储 视屏中的给出的答案不能实现
assume cs:code
code segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
dw 0,0,0,0,0,0,0,0
start: mov ax,cs
       mov ss,ax
           mov sp,32
          
           mov bx,0
           mov cx,8
s:     push cs:[bx]
       add bx,2
           loop s
          
           mov bx,0
           mov cx,8
s1:    pop cs:[bx]
       add bx,2
           loop s1
          
           mov ax,4c00h
           int 21h
code ends
end start
后来我发现是循环数的问题
如果给出的第一个cx=8,第二个cx=16 结果是将第一组定义的数 给逆序了 而第二组仍未0
C:\Users\zhuzhu\Desktop\未命名.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-4-16 17:24:01 | 显示全部楼层
附 想发一张图片上去 无赖 没有权限
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-4-16 18:28:02 | 显示全部楼层
附 我再单步调试时发现 当程序运行到cs:6=0abc时,内存中的cs:0e原来是0987 被自动改为1415越往下运行 越来越多的定义内存值被改变,以至于最后的结果出错。不知道是什么原因
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-4-16 18:35:00 | 显示全部楼层
附:突然发现 如果是第一个cx=8,第二个cx=16 可以生成逆序的排列 但是 申请的栈空间却消失了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-20 01:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表