马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
2.2“字”(WORD)在寄存器中的储存 一个字可以存在一个16为寄存器中,这个字的高位字节和低位字节自然就存在这个寄存器的高8为寄存器和底8位寄存器中。 由于一个内存单元可以存放8位数据,CPU中的寄存器有可以存放N个8位数据。 也就是说,计算机中的数据大多是由1~N个8为数据构成的。 用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了。 不知道是我自己理解错误,还是抄写错误了!如果哪位同学知道的话,希望能明示!
|