fanpengfei 发表于 2014-5-3 11:16:10

求大神解答难题

十六位数据到底如何表示呢001E如何表示的的呢

xiaosawanjava 发表于 2014-5-3 11:58:04

如何表示?

1. 首先我来说下是怎样存放到ax里面的吧,001EH ,ah存放的是00H,al存放的是1EH
2。因为内存是从低地址往高地址上升的,而ah搞字节的数据存放在高地址,al存放在低地址,所以ah的00一定是存放在al的后面的,比如 100:01E 00 假设al中的00H 存放在100:0这个地址中,那ah绝对是存放在紧接着他的后一个地址 100:1 中 所以 从100:0 开始存放 ax是这样排列的 1E 00
3.其实数据是只认识二进制,而16进制是便于我们人的 计算 和 直观 才这样设计的,4位二进制对应一个16进制。

fanpengfei 发表于 2014-5-3 14:54:23

xiaosawanjava 发表于 2014-5-3 11:58 static/image/common/back.gif
如何表示?

1. 首先我来说下是怎样存放到ax里面的吧,001EH ,ah存放的是00H,al存放的是1EH


那为啥F000前面还要加个0呢,四位二进制为16位

xiaosawanjava 发表于 2014-5-3 17:43:20

fanpengfei 发表于 2014-5-3 14:54 static/image/common/back.gif
那为啥F000前面还要加个0呢,四位二进制为16位

因为你不加0 编译器会认为你这是一条指令而不是数据,所以才加0,你有见过指令前面带0的吗

fanpengfei 发表于 2014-5-3 18:14:09

xiaosawanjava 发表于 2014-5-3 17:43 static/image/common/back.gif
因为你不加0 编译器会认为你这是一条指令而不是数据,所以才加0,你有见过指令前面带0的吗

嗯嗯非常感谢:lol:
页: [1]
查看完整版本: 求大神解答难题