在微机原理中,8086汇编语言中 00H和0000H有什么区别啊,如果表示的是数,是不是它们字长不一样?

2024-12-01 09:33:41
推荐回答(2个)
回答(1):

00H是8位数据
0000H是16位数据
所以00H与0000H他们所表示的数的位是不一样的,位不一样代表着他们所能表示的数据的大小范围是不一样的
如果表示成数,他们的字长是不一样的,在8086中,二个字节表示一个字,
所以00H是一个字节
而0000H是一个字
PS:若有不明白的地方,可以追问

回答(2):

编译器编译的时候是看你使用的寄存器的位数,来区别数字的位数的。
使用AX,则看待为16;使用AL则看待为8为;
根据你的追问:
字节传送则使用AL;
mov [si],al
如果是传送到某个地址;
你可以使用这条指令;
mov byte ptr[si],8data 以字节传送

mov word ptr[si],16data 以字传送