Uint8向int8转换

Uint8向int8转换10.11一团浆糊一、typecast(uint8(255),‘int8’)ans=-1uint8(255)结果11111111对11111111取补码,10000001(也就是ans=-1)二、对8位有符号二进制数

10.11   一团浆糊

一、

typecast(uint8(255),‘int8’)

ans=-1

uint8(255)   结果    1111 1111

对1111 1111取补码,1000 0001(也就是ans=-1)

二、

对8位有符号二进制数,原码、反码和补码所能表示的范围如下:

原码:1111 1111B~0111 1111B(-127~+127)

反码:1000 0000B~0111 1111B(-127~+127)

补码:1000 0000B~0111 1111B(-128~+127)

三、

对一个正数的原码取反加1,得到这个正数对应负数的补码。

十进制数           原码                                  补码

6                     0000 0110

对其原码取反加1,得到-6的补码

-6                    1000 0110                        1111 1010    (6的原码取反加1得到-6的补码)

-6的原码相比6的原码,多出  1000 0000,将他看做补码,其对应的原码1000 0000,数字位同时当做符号位即-128

-128                1000 0000                      0111 1111                             

今天的文章Uint8向int8转换分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/64021.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注