发布网友 发布时间:2022-04-24 04:35
共4个回答
热心网友 时间:2023-10-28 14:37
有符号数和无符号数在计算机里表示都是一样的,二进制的补码形式。
是有符号还是无符号,是编译器来辨认的。
例如:
unsigned char uch, char ch;
在内存中有个数0b11111111.
把它赋给uch,那么uch就是127
如果赋给ch,那么ch就是-1
热心网友 时间:2023-10-28 14:38
计算机判断有无符号,是根据数值的符号位,比如,一串二进制数值,最前面的是符号位,1代表负,0代表正。
热心网友 时间:2023-10-28 14:38
+1或-1
热心网友 时间:2023-10-28 14:39
在编程语言中,如果设定某一个存储单元 为有符号数的存储单元,那么这个数的存储单元里的首位就被当做了符号位,如果定义为无符号数,那么取消符号位,定义的存储单元内都为数据位、且只能表示正数。
比如ANSI C语言中 int 和 unsigned int 都是16位存储空间。
前者可以表示的数 为-32767~+32768 后者则可以表示 0~65535
也就是说当用int与unsigned int时可以表示的数的总量相同,只是绝对值个数后者是前者的2倍
热心网友 时间:2023-10-28 14:37
有符号数和无符号数在计算机里表示都是一样的,二进制的补码形式。
是有符号还是无符号,是编译器来辨认的。
例如:
unsigned char uch, char ch;
在内存中有个数0b11111111.
把它赋给uch,那么uch就是127
如果赋给ch,那么ch就是-1
热心网友 时间:2023-10-28 14:38
计算机判断有无符号,是根据数值的符号位,比如,一串二进制数值,最前面的是符号位,1代表负,0代表正。
热心网友 时间:2023-10-28 14:38
+1或-1
热心网友 时间:2023-10-28 14:39
在编程语言中,如果设定某一个存储单元 为有符号数的存储单元,那么这个数的存储单元里的首位就被当做了符号位,如果定义为无符号数,那么取消符号位,定义的存储单元内都为数据位、且只能表示正数。
比如ANSI C语言中 int 和 unsigned int 都是16位存储空间。
前者可以表示的数 为-32767~+32768 后者则可以表示 0~65535
也就是说当用int与unsigned int时可以表示的数的总量相同,只是绝对值个数后者是前者的2倍
热心网友 时间:2023-10-28 14:37
有符号数和无符号数在计算机里表示都是一样的,二进制的补码形式。
是有符号还是无符号,是编译器来辨认的。
例如:
unsigned char uch, char ch;
在内存中有个数0b11111111.
把它赋给uch,那么uch就是127
如果赋给ch,那么ch就是-1
热心网友 时间:2023-10-28 14:38
计算机判断有无符号,是根据数值的符号位,比如,一串二进制数值,最前面的是符号位,1代表负,0代表正。
热心网友 时间:2023-10-28 14:38
+1或-1
热心网友 时间:2023-10-28 14:39
在编程语言中,如果设定某一个存储单元 为有符号数的存储单元,那么这个数的存储单元里的首位就被当做了符号位,如果定义为无符号数,那么取消符号位,定义的存储单元内都为数据位、且只能表示正数。
比如ANSI C语言中 int 和 unsigned int 都是16位存储空间。
前者可以表示的数 为-32767~+32768 后者则可以表示 0~65535
也就是说当用int与unsigned int时可以表示的数的总量相同,只是绝对值个数后者是前者的2倍
热心网友 时间:2023-10-28 14:37
有符号数和无符号数在计算机里表示都是一样的,二进制的补码形式。
是有符号还是无符号,是编译器来辨认的。
例如:
unsigned char uch, char ch;
在内存中有个数0b11111111.
把它赋给uch,那么uch就是127
如果赋给ch,那么ch就是-1
热心网友 时间:2023-10-28 14:38
计算机判断有无符号,是根据数值的符号位,比如,一串二进制数值,最前面的是符号位,1代表负,0代表正。
热心网友 时间:2023-10-28 14:38
+1或-1
热心网友 时间:2023-10-28 14:39
在编程语言中,如果设定某一个存储单元 为有符号数的存储单元,那么这个数的存储单元里的首位就被当做了符号位,如果定义为无符号数,那么取消符号位,定义的存储单元内都为数据位、且只能表示正数。
比如ANSI C语言中 int 和 unsigned int 都是16位存储空间。
前者可以表示的数 为-32767~+32768 后者则可以表示 0~65535
也就是说当用int与unsigned int时可以表示的数的总量相同,只是绝对值个数后者是前者的2倍