大家好,今天小编关注到一个比较有意思的话题,就是关于C语言卢萍的问题,于是小编就整理了1个相关介绍C语言卢萍的解答,让我们一起看看吧。
用8位补码表示的整数-1的机器码?
补码的定义:
比如,十进制数35和-1在8位机中的补码表示为:
x1=35, x2=-1;
(图片来源网络,侵删)
因为x1>0,所以[x1]补=[x1]原=0010 0011;
因为x2<0,所以[x2]原=1000 0001;
[x2]补=1111 1110+1=1111 1111;
(图片来源网络,侵删)
对于机器来说,它记录的只是补码本身:0010 0011和1111 1111,也就是说机器并不知道这段补码是有符号数还是无符号数,但是当你使用高级语言编写程序,定义了int或者unsigned int,那么就会根据相应的定义,认为这段机器码的第一位是数值位或者符号位。