给出以下值:
x db 128; db -128和y将是相同的值,如x仅dw,b与y仅-128和z dd和c dd -128相同。 显示哪些是基数2和16中的x,a,y,b,z,c的表示(符号和无符号)。解释为什么。看看我做了什么:
我做到了:
(128)in base 2 = 10000000(i have used . to view better)
(-128)in base 2 db = also with 10000000
dw: 128 in base 2 = 0000000001000000
128 is = 1111111111000000
dd : 128 in base 2 = 00000000000000000000000001000000
128 in base 2 = 11111111111111111111111111000000
我如何解决这个问题?这就涉及到问题。我不知道如何在基数16中转换所有数字符号和无符号,db,dw和dd。一些想法?
答案 0 :(得分:1)
128 = 1111111111000000
这不正确。 16位数字128将是0000000010000000
。如果您的意思是-128那么那将是1111111110000000
(请注意,其中一个1
比您的版本少{。}}。
我不知道如何在16号基地进行转换
只需获取二进制表示,并将每组四位映射到十六进制数字:
Base2 Base16
-------------
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F
例如,10000000
等于0x80
,01111111
等于0x7F
,依此类推。