计算机组成原理——第二章(16)

本小节较为简单,内容分为C语言的有符号数转无符号数、长整型转短整型、短整型转长整型

C语言类型转换

1.有符号数转无符号数

有符号x二进制表示是1110 1111 0001 1111,开头 1是符号位,转成无符号整型之后,开头1就是数值位,y真值为61215

2.长整型转短整型

 长整型转短整型很暴力,直接从低位开始,截断取低位就行了

3.短整型转长整型

短整型转长整型需要提到我们之前讲到的符号扩展

原码的符号扩展是怎么样的?反码的符号扩展是怎么样的?补码的符号扩展是怎么样的?忘记的同学可以回顾一下计算机组成原理——第二章(9)  其中包括了定点小数、定点整数原反补的符号扩展

因为C语言存储数据是用补码存的,所以我们也用补码的符号扩展规则,

如果短整型是负数,转长整型之后符号扩展前面补1,如果短整型是正数,转长整型符号扩展前面补0

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值