计算机如何区分有符号与无符号数我想问一下计算机如何区分一个数是有符号数与无符号数,负数倒不是问题.是

发布时间:2021-02-26 05:58:22

计算机如何区分有符号与无符号数我想问一下计算机如何区分一个数是有符号数与无符号数,负数倒不是问题.是有符号数的正数,比如说十进制“1”这个数,它的有符号与无符号的二进制都是“0001”那么计算机是如何区分它们是有符号数还是无符号数?还有就是什么时候一个数是用有符号数的二进制来存储的?什么时候是用无符号的二进制来存储的?

网友回答

在编程语言中,如果设定某一个存储单元 为有符号数的存储单元,那么这个数的存储单元里的首位就被当做了符号位,如果定义为无符号数,那么取消符号位,定义的存储单元内都为数据位、且只能表示正数.
比如ANSI C语言中 int 和 unsigned int 都是16位存储空间.
前者可以表示的数 为-32767~+32768 后者则可以表示 65535
也就是说当用int与unsigned int时可以表示的数的总量相同,只是绝对值个数后者是前者的2倍
以上问题属网友观点,不代表本站立场,仅供参考!