鱼C论坛

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

[已解决]ah = 2640H 是如何计算的?谢谢

[复制链接]
发表于 2017-12-3 10:37:55 | 显示全部楼层 |阅读模式

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

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

x
程序段中指令执行情况之二(原AX中的值:0000H,原BX中的值:0000H)

mov ax, 001AH           001AH            0000H
mov bx, 0026H           0040H            0026H
add al ,bl                     0040H           0026H
add ah,bl                    2640H            0026H
add bh,al                    2640H            4026H
mov ah,0                    0040H            4026H
add al,85H                 00C5H             4026H
add al,93H                      ?                 4026H


我想请老师解答下
add ah,bl                    2640H            0026H
add bh,al                    2640H            4026H
mov ah,0                    0040H            4026H
这些是怎么算出来的
最佳答案
2017-12-4 00:48:38
Huang1234 发表于 2017-12-3 17:11
你说的这些我懂,关键是:
add ah,bl    2640 是怎么得来的?bl 的低8位是0026 先送入ah吗,变成2600+al  ...

楼上说的很清楚啊,ax, bx是16位寄存器,ax可以分为两个8位的分别为高位ah和低位al,ax=001Ah说明高位存放的是00h低位存放的是1Ah,因为是十六进制的换成二进制的就是八位了,movax,001A,movbx,0026, 就可以知道al=1Ah,bl=26h ,addal,bl为1A+26=40h放进al寄存器,下面同理
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-12-3 11:50:02 From FishC Mobile | 显示全部楼层
ah,bh分别是ax和bx的高八位(十六进制的高两位)
而al,bl分别是ax和bx的低八位(十六进制的低两位)
无非就是对这些位置进行移动或加法操作
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-3 17:11:09 | 显示全部楼层
BngThea 发表于 2017-12-3 11:50
ah,bh分别是ax和bx的高八位(十六进制的高两位)
而al,bl分别是ax和bx的低八位(十六进制的低两位)
无非 ...

你说的这些我懂,关键是:
add ah,bl    2640 是怎么得来的?bl 的低8位是0026 先送入ah吗,变成2600+al 的值0040H吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-12-3 17:13:57 | 显示全部楼层
Huang1234 发表于 2017-12-3 17:11
你说的这些我懂,关键是:
add ah,bl    2640 是怎么得来的?bl 的低8位是0026 先送入ah吗,变成2600+al  ...

那这个
add bh,al  BX 的值 是4026 是怎么算出来的?谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-4 00:48:38 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
Huang1234 发表于 2017-12-3 17:11
你说的这些我懂,关键是:
add ah,bl    2640 是怎么得来的?bl 的低8位是0026 先送入ah吗,变成2600+al  ...

楼上说的很清楚啊,ax, bx是16位寄存器,ax可以分为两个8位的分别为高位ah和低位al,ax=001Ah说明高位存放的是00h低位存放的是1Ah,因为是十六进制的换成二进制的就是八位了,movax,001A,movbx,0026, 就可以知道al=1Ah,bl=26h ,addal,bl为1A+26=40h放进al寄存器,下面同理
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 20:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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