鱼C论坛

 找回密码
 立即注册
查看: 10053|回复: 20

[汇编作业] 检测点6.1

[复制链接]
发表于 2014-6-25 19:47:51 | 显示全部楼层 |阅读模式

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

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

x
(1) 下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据,完成程序:
assume cs:codesg

codesg segment
        
        dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
        
start:        mov ax,0
                mov ds,ax
                mov bx,0
               
                mov cx,8
               
          s:mov ax,[bx]
                mov cs:[bx],ax
                add bx,2
                loop s
        
                mov ax,4c00h
                int 21h

codesg ends

end start



(2) 下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据,数据的传送用栈来进行。栈空间设置在程序内。完成程序:
assume cs:codesg

codesg segment
        
        dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
        dw 0,0,0,0,0,0,0,0,0,0                        ;10个字单元用作栈空间
        
start:        mov ax,cs
                mov ss,ax
                mov sp,36
               
                mov ax,0
                mov ds,ax
                mov bx,0
                mov cx,8
               
          s:push [bx]
                pop cs:[bx]
                add bx,2
                loop s
        
                mov ax,4c00h
                int 21h

codesg ends

end start


其实栈空间只使用了1个字单元ss:22~ss:23用作数据传送。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-6-25 20:04:12 | 显示全部楼层
:titter::titter::titter::titter::titter::titter::titter::titter::titter:笑笑更健康!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2014-7-16 23:29:57 | 显示全部楼层
本帖最后由 丑小七 于 2014-7-16 23:34 编辑

学习学习!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-4-4 10:40:35 | 显示全部楼层
是ss:33~ss:34吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 2

使用道具 举报

发表于 2015-6-21 03:06:50 | 显示全部楼层
明白了,谢谢楼主
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-7-5 12:45:17 | 显示全部楼层
第二题的start那边mov sp,36 36是怎么来的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-9-28 19:29:29 | 显示全部楼层
36是把开辟的栈空间加上上面的数据开辟的空间就得出来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-1-11 19:59:20 | 显示全部楼层
有道理
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-2 20:45:55 | 显示全部楼层
我觉得应该是 mov sp, 37 或者 mov sp, 25H, 因为第一次使用栈为空, 那么这个时候栈顶指针 sp 应该是指向栈底偏移位置的下一个位置才对。求鉴定。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2017-4-20 11:39:40 | 显示全部楼层
应该是ss:30-ss:31
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-1 15:48:05 | 显示全部楼层
为什么我觉得答案改成mov sp,18h也可以呢。奇了怪咧。实际测试可行。(6.1(2))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-22 13:12:21 | 显示全部楼层
本帖最后由 ranbo_q 于 2017-5-22 13:14 编辑

刚才一直在想为什么不是37  25H,原来字节是从地址0开始的,也就是说0~35 里面有36个字节,因为栈空,所以指向下一个字节单元,36
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-22 13:16:52 | 显示全部楼层
kyowjw01 发表于 2017-5-1 15:48
为什么我觉得答案改成mov sp,18h也可以呢。奇了怪咧。实际测试可行。(6.1(2))

你给的栈空间大小完全够装下 16个字节,------18H ----->sp= 24结果是和原来结果一样
题目要求是规定栈空间为10个字单元,也就是20个字节单元,sp指向 ---->36
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-5-31 21:30:03 | 显示全部楼层
数据空间8*2个,栈空间是10*2
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-10 20:08:19 | 显示全部楼层
顶楼主 标准答案!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-17 13:22:31 | 显示全部楼层
楼主威武
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-5 21:23:53 | 显示全部楼层
答案正确。 至于为什么是36,24H,因为开始是从0开始的。所以是36.一共就不到40个数,慢慢查一下就知道了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-14 15:48:28 | 显示全部楼层
飞翔的石牌人 发表于 2016-12-2 20:45
我觉得应该是 mov sp, 37 或者 mov sp, 25H, 因为第一次使用栈为空, 那么这个时候栈顶指针 sp 应该是指向 ...

我也感觉是18个字,36个字节,应该指向栈顶下一个,应该是mov sp,37  求鉴定,哈哈,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-14 15:49:53 | 显示全部楼层
ranbo_q 发表于 2017-5-22 13:12
刚才一直在想为什么不是37  25H,原来字节是从地址0开始的,也就是说0~35 里面有36个字节,因为栈空,所以 ...

哦哦哦,原来是这样啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-14 15:50:33 | 显示全部楼层
飞翔的石牌人 发表于 2016-12-2 20:45
我觉得应该是 mov sp, 37 或者 mov sp, 25H, 因为第一次使用栈为空, 那么这个时候栈顶指针 sp 应该是指向 ...

原来是从0开始,不好意思,打扰了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-29 00:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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