24位转32位
分类:
文章
•
2024-01-16 14:56:46
24位转32位(有符号)
题目:试编写一段程序,将24位有符号结果转变为32位有符号结果。
代码:

运行结果:

具体编写过程:
- 将24位数分为3个字节H M L。
- 通过与操作提取符号位并赋值给A,A=H&0x80,再次通过与操作,保留去符号位的其他值B=H&0x7F。
- 将符号位A,B左移,M左移8位,A B M L组成新的32 位有符号结果。
- 判断A是否不为0,若不为0,则无符号结果为b=a-0x80000000,输出十进制数时添加负号。 若为0,则直接输出a。