编程实现:一个无符号16位数据y (1)提取y的高位字节,并输出。 (2)高8位不变,使低字节为0,并输出(使用位运算实现)
时间: 2024-05-15 12:12:12 浏览: 65
16位数据取高其8位,低8位,高4位,低4位数据,并重新组合
```c++
#include <iostream>
using namespace std;
int main() {
unsigned short y = 0xABCD; // 二进制为 1010 1011 1100 1101
unsigned char highByte = y >> 8; // 右移8位,得到高位字节 1010 1011 -> 10101011
unsigned short lowByteZero = y & 0xFF00; // 与 0xFF00 相与,低位字节变为0,保留高位 1010 1011 1100 0000
cout << "高位字节为:" << hex << static_cast<int>(highByte) << endl; // 输出高位字节,转为十六进制显示
cout << "低字节为0后的结果为:" << hex << lowByteZero << endl; // 输出高位不变,低字节为0后的结果,转为十六进制显示
return 0;
}
```
输出结果为:
```
高位字节为:ab
低字节为0后的结果为:ab00
```
阅读全文