1.求下列数据的原码、反码和补码:
|
原码 |
反码 |
补码 |
-35 |
1010 0011 |
1101 1100 |
1101 1101 |
-124 |
1111 1100 |
1000 0011 |
1000 0100 |
-85 |
1101 0101 |
1010 1010 |
1010 1011 |
-113 |
1111 0001 |
1000 1110 |
1000 1111 |
2.求下列数据的输出结果:
a.unsigned char c = -10; %u无符号输出结果
存: |
原:1000 1010 |
反:1111 0101 |
补:1111 0110 |
取: |
补:1111 0110 =246 |
所以输出结果为246 |
![](https://img-blog.csdnimg.cn/f02dccdf1fab4ee486816be6ba87bb04.png)
b.signed char p = 213;%d有符号输出的结果
存: |
补:1101 0101 |
取: |
补:1101 0101 |
反:1101 0100 |
原:1010 1011 =-43 |
所以输出结果为-43 |
![](https://img-blog.csdnimg.cn/b764bdd181e6431898b9026b1f359823.png)
3.整理思维导图
![](https://img-blog.csdnimg.cn/32ef477f61c3494d93866f80145d2f06.png)
4.第一个C语言程序,分步编译并查看每一步的结果
![](https://img-blog.csdnimg.cn/081726e648354396a496d54fc1959135.png)
5.求下列宏定义的输出结果:
a.#define N 10
b.#define M N*2+4
c.#define NUM M*N/M*3+M
![](https://img-blog.csdnimg.cn/7b1a81c20cc44214ba6fb674433379e0.png)