鱼C论坛

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

ffffH:0006单元中的数乘3的问题

[复制链接]
发表于 2013-9-10 23:11:04 | 显示全部楼层 |阅读模式

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

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

x
计算ffffH:0006单元中的数乘3结果存在DX中。

这个问题实在是蛋痛,就好像数学中的X+Y把结果=Z,
X是多少也不知道,Y是多少也不知道。

好抽像啊,新手对这类问题,看了答案像看天书一样的。
mov ax,0ffffh
mov ds,ax

这两段代码,为什么是把0FFFFH先存到ax中,而不是BX CX……而不是0FFFF+0006存在AX中呢?

这里说的是不是先把FFFFH的数据先存到AX,再把AX的数据放到数据段,而不是放在CS SS……规定?

估计是理解了这两条,后面的就好理解了。
书是97页,代码!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-9-11 08:40:06 | 显示全部楼层
如果只是简单的解释,那就是ax,bx,cx,dx都有默认的作用。
AX 称为累加器,常用于存放算术逻辑运算中的操作数,另外所有的I/O指令都使用累加器与外设接口传送信息。
BX,CX,DX都有自己的默认作用,这个书上有。当然如果你硬要mov bx,data mov ds,bx,那也是可以的

ffffH:0006 废话,16位寄存器,最大只能接受FFFF的值,当然如果你能用16位寄存器保存【FFFF+0006H】的值,整个计算机界都会以你为师。那个崇拜啊。

至于放在DS,而不是CS,SS,那是因为编译器的原因,他需要知道,哪些地方是存放数据,哪些地方存放代码,要不然,就乱套了。

复杂的解释,就得先看汇编,将语法之类的搞定,再看计算机组成原理,将结构搞定,再看inter开发手册,将架构搞定,这样,你就差不多,可以搞定上面的原理,然后深入,你就得去看电路图呢。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-11 19:39:25 | 显示全部楼层
谢谢2楼的大神,实在是学的枯燥发下牢骚,一知道半解的,看的太抽像了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-9-22 20:38:40 | 显示全部楼层
慢慢来吧。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-29 01:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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