鱼C论坛

 找回密码
 立即注册
查看: 2941|回复: 4

[技术交流] 老DJ学汇编-第二章-第二课(作业)

[复制链接]
发表于 2011-10-11 02:03:03 | 显示全部楼层 |阅读模式

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

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

x
2.2“字”(WORD)在寄存器中的储存
一个字可以存在一个16为寄存器中,这个字的高位字节和低位字节自然就存在这个寄存器的高8为寄存器和底8位寄存器中。
由于一个内存单元可以存放8位数据,CPU中的寄存器有可以存放N8位数据。
也就是说,计算机中的数据大多是由1~N8为数据构成的。
16位进制来表示数据可以直观的看出这个数据是由哪些8位数据构成的。
每两位对应一个八进制。
2.3几条汇编指令 (汇编指令不区分大小写)示意图如下:
(图一)

                               
登录/注册后可看大图
以上汇编指令的个人理解如下:
MOV    AX,      18                       AX=18
(移动) (寄存器)(数值)
注:   移动-数值--寄存器。

CPU执行下表中的程序段的每条指令后,对寄存器中的数据进行的改变。思考题 (一)
如图二。
(图二)

                               
登录/注册后可看大图
答案:以十六进制计算 AX+BX=044C
注:8226+8226=1044C 实际应得 044C(去掉最高位)
思考题二:如图三
(图三)

                               
登录/注册后可看大图
这里的丢失,指的是进位制不能再8位寄存器中保存,但是CPU不是真的丢弃这个进位值。
(期待后面的后面的+后面的讨论)
检测点 2.1
请写出每条汇编指令执行后相关寄存器中的值。
MOV  AX, 62627
AX= F4A3H
MOV  AH, 31H
AX=31A3H  ????
MOV  AL, 23H
AX=3123H
ADD  AX, AX
AX= 6246H
MOV  BX, 826CH
BX=826CH
MOV  CX, AX
CX=6246H
MOV  AX, BX
AX=826CH
ADD  AX, BX
AX=04D8H
MOV  AL, BH
AX=0482H
MOV  AH, BL
AX=6C82H
ADD  AH, AH
AX=D882H
ADD  AL, 6
AX=D888H
ADD  AL, AL
AX=D810H
MOV  AX, CX
AX=6246H

费解:MOV  AH, 31H     AX=31A3H  如果等于31A3H的话,那么31A3H+3123H
不等于6246H了。
如果:AX=3123H的话,那么3123H+3123H就等于6246H了。
不知道是我自己理解错误,还是抄写错误了!如果哪位同学知道的话,希望能明示!

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-10-11 04:04:53 | 显示全部楼层
是31A3没错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-10-11 04:21:04 | 显示全部楼层
楼主你提问题也不说明白 害我看了那么久也不知道你要表达什么
AX原值=F4A3
31H移到高位后AX=31A3
23H移到低位后AX=3123
所以AX+AX=6246H
不知道你是不是说这里啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-10-11 12:44:01 | 显示全部楼层
是这里。但还是不太明白。我继续多听几遍!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-10-12 13:30:45 | 显示全部楼层
3楼正解!!!你从上到下顺序一条一条读下来就行了,这是程序执行的顺序!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-19 08:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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