鱼C论坛

 找回密码
 立即注册
查看: 3138|回复: 2

[学习笔记] 解答:《汇编语言》王爽第二版 实验4第3题第2空 为什么是17H

[复制链接]
发表于 2019-10-18 21:20:33 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 sanders 于 2019-10-18 22:56 编辑

这不是提问 是解答

第(3)题

编译好程序后,用r、d和u命令分别查看各寄存器信息、内存中的数据和每条指令对应的字节数。

书91页提到“debug将程序从可执行文件加载入内存后,cx中存放的是程序的长度”,r命令查到cx=001c,u命令查到“int 21h”后的偏移地址值为1C,正好对应起来(长度是从00H到1BH,长是1CH)。

  • 问题1:复制的是什么?从哪里到哪里?
  • 答:指令在内存中是以二进制形式存放的,所以复制的是数据。从cs:0000h~cs:0016h复制到0:200~0:216

  • 问题2:有多少字节?如何知道要复制的字节数量
  • 答:根据上面命令查到的,共有1Bh(27)个字节。要复制的数量即为loop下一条指令的偏移地址的值(也就是17个)。

为什么是17个?因为本程序的loop循环里是一个字节一个字节地复制,所以要复制的次数即为要复制的指令的字节数。


权限不够不能插图 完整版在B站专栏cv3788352
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-10-18 21:56:01 | 显示全部楼层
本帖最后由 jackz007 于 2019-10-18 21:57 编辑

        楼主,你这么提问让人非常莫名其妙!把代码文本贴出来啊,鼻子、眼睛、耳朵、嘴巴怎么了,咱们也好对着图说呀。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-10-18 22:32:48 | 显示全部楼层
jackz007 发表于 2019-10-18 21:56
楼主,你这么提问让人非常莫名其妙!把代码文本贴出来啊,鼻子、眼睛、耳朵、嘴巴怎么了,咱们也好 ...

这不是提问 是解答
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 04:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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