计算机,二进制表示数,4位,第1位为符号位,为什么表示范围是-16到15?怎么表示-16?

wgyian 1年前 已收到1个回答 举报

lidousi 幼苗

共回答了22个问题采纳率:90.9% 举报

00000~01111表示0~16
10000~11111表示0~-16

1年前 追问

4

wgyian 举报

n位二进制数能够表示的有符号整数范围即 负2的n次方 到 2的n-1次方-1?

举报 lidousi

引用一下
计算机用二进制表示负数是用的“补码法”,做法是正数按原码,负数用其相反数的反码加一。
这种结果用-32768代替了“-0”,可以使符号位能与有效值部分一起参加运算,从而简化运算规则;同时使减法运算转换为加法运算,进一步简化计算机中运算器的线路设计。
举例:
3的码值是 00000011,-3则为:11111100+1= 11111101
32767的码值是01111111,11111111(15个1),-32767是
10000000,00000000+1=10000000,00000001
-32768是01111111,11111111+1=10000000,00000000

大概是这意思,我前面说的是嵌入式里面的
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.040 s. - webmaster@yulucn.com