社区
C++ 语言
帖子详情
请问如何对无符号数进行符号扩展?
bluesu27
2004-12-27 01:29:44
比如我有一段程序:
unsiged long a = 0x13FFFFFF;
long b = (long)(a & 0x03FFFFFF);
我是意思是有个32位的无符号数,我要把前6位置0,后26按符号扩展,比如如果后26位全为F,则应该扩展出-1,而我这样写只能得出67108863,郁闷中,希望有高手指点!!
...全文
136
回复
打赏
收藏
请问如何对无符号数进行符号扩展?
比如我有一段程序: unsiged long a = 0x13FFFFFF; long b = (long)(a & 0x03FFFFFF); 我是意思是有个32位的无符号数,我要把前6位置0,后26按符号扩展,比如如果后26位全为F,则应该扩展出-1,而我这样写只能得出67108863,郁闷中,希望有高手指点!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
C - 有
符号
数
和
无
符号
数
扩展
C语言标准要求先
进行
数
据大小的转换,之后再
进行
无
符号
和有
符号
之间的转换. C语言中的强制类型转换保持二进制位值不变,只是改变解释位的方式。 将
无
符号
数
转换为更大的
数
据类型时, 只需简单地在开头添加0,这种运算称为0
扩展
。将有
符号
数
转换为更大的
数
据类型需要执行
符号
扩展
,规则是将
符号
位
扩展
至所需要的位
数
。
扩展
的原则是: 有
符号
的
数
据类型,在向高精度
扩展
时,总是带
符号
扩展
无
符号
的
数
据类型,在向高...
【汇编优化系列】关于
符号
扩展
和
无
符号
扩展
(包括mips msa实现)
DATE: 2021.11.26 文章目录前言1、参考2、
符号
扩展
和
无
符号
扩展
含义3、举例说明4、mips msa相关指令 前言 1、参考
符号
扩展
和
无
符号
扩展
extension 2、
符号
扩展
和
无
符号
扩展
含义 MIPS32 指令集架构中,经常会有指令需要将其中的立即
数
进行
符号
扩展
,或者
无
符号
扩展
,一般都是都是将n位立即
数
扩展
为32位。
无
符号
扩展
:直接将
扩展
后的
数
据的高(32-n)位置为0。
符号
扩展
:将
扩展
后的
数
据的高(32-n)位置为立即
数
的最高位。 An integer register
深入理解计算机系统——
无
符号
数
与有
符号
数
相互转化,
数
的
扩展
和截断
无
符号
数
转化为有
符号
数
有
符号
数
转化为
无
符号
数
有
符号
数
的
扩展
无
符号
数
的
扩展
有
符号
数
的截断
无
符号
数
的截断
无
符号
数
转化为有
符号
数
一般来说
无
符号
数
使用的是原码表示,有
符号
数
使用的是补码表示。
无
符号
数
转化为有
符号
数
就是将原码位不变,将原码按照补码的解释方法来解释,也就是说位模式不变,改变的是位的解释,补码的解释方式与原码不同的位置是权重最大的位原码解释为2^w-1,但是补码的解释方式是-1*2 ^ w-1。(正变负) 有
符号
数
转化为
无
符号
数
与上一个相似,有
符号
的
数
转化为
无
符号
的
数
,位模式不变,改变.
符号
扩展
和
无
符号
扩展
MIPS32 指令集架构中,经常会有指令需要将其中的立即
数
进行
符号
扩展
,或者
无
符号
扩展
,一般都是都是将n位立即
数
扩展
为32位。
无
符号
扩展
:直接将
扩展
后的
数
据的高(32-n)位置为0。
符号
扩展
:将
扩展
后的
数
据的高(32-n)位置为立即
数
的最高位。 16位立即
数
0x8000 0x1000
符号
扩展
0xFFFF8000 0x00001000
c语言
无
符号
char,C语言中的
无
符号
扩展
和带
符号
扩展
C语言中的
无
符号
扩展
和带
符号
扩展
(2012-03-31 15:05:05)C语言中,当不同类型的
数
据
进行
运算的时候,就会发生强制或隐式类型转换,通常是低精度的
数
据类型
扩展
到高精度的。有些时候,低精度的位
数
比较少,
扩展
到高精度的时候,就要在前面补充一些位。那么这些位是补0还是补1呢?这就涉及到
无
符号
扩展
和带
符号
扩展
。
扩展
的原则是:1.有
符号
的
数
据类型,在向高精度
扩展
时,总是带
符号
扩展
2.
无
符号
的
数
据...
C++ 语言
65,202
社区成员
250,523
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章