写出下列程序在X86 上的运行结果。
2011-08-21 16:09
696 查看
写出下列程序在X86 上的运行结果:
输出结果:50
分析:
a:4表示a占4位
b:5表示b占5位
c:7表示c占7位
内存分配方式是从低位到高位(a在低位,c在高位)
当有赋值:test.a=2(0010) test.b=3(00011) test.c=0(0000000)
高 ---------- 32 位--------> 低
00000000 00000000 00000000 00110010
00000000 00000000 |+++++++|====--|--
--------------------—|c------|b------|a-
---------------------|0------|3------|-2--
X86 上市16位CPU,对应的short占两个字节。
拼成00000000 00110010 这个二进制值(short)为十进制50
struct mybitfields { unsigned short a:4; unsigned short b:5; unsigned short c:7; }test; void main(){ int i; test.a=2; test.b=3; test.c=0; i=*((short*)&test); printf("%d\n",i); system("pause"); }
输出结果:50
分析:
a:4表示a占4位
b:5表示b占5位
c:7表示c占7位
内存分配方式是从低位到高位(a在低位,c在高位)
当有赋值:test.a=2(0010) test.b=3(00011) test.c=0(0000000)
高 ---------- 32 位--------> 低
00000000 00000000 00000000 00110010
00000000 00000000 |+++++++|====--|--
--------------------—|c------|b------|a-
---------------------|0------|3------|-2--
X86 上市16位CPU,对应的short占两个字节。
拼成00000000 00110010 这个二进制值(short)为十进制50
相关文章推荐
- 6.分析并写出下列程序的运行结果
- 习题8:编写一个控制台应用程序,完成下列功能,并写出运行程序后输出的结果。
- 分析并写出下列程序的运行结果
- 8.1分析并写出下列程序的运行结果。
- 分析并写出下列程序的运行结果
- 第十二周项目一 阅读程序,请写出这些程序的运行结果(1)
- 1.写出下例程序的运行结果
- 写出程序运行结果,再进行程序进行比较
- 阅读程序写出运行结果1
- 第九周实践-阅读程序写出运行结果并理解(3)
- 第十、十一周项目-阅读程序,写出这些程序的运行结果(4)
- 第十二周项目一 阅读程序,请写出这些程序的运行结果(2)
- 实验9 指针1 1、程序填空:下列程序在数组中同时查找最大元素和最小元素的下标,分别存放在 main()函数的max 和 min 变量中。要求:根据运行结果分析程序和填空,并注释说明填充依据。
- 6.1.分析并写出下例程序运行的结果
- 第12周—阅读程序,写出运行结果。 (1)
- 阅读程序写出运行结果2
- 第9周-项目1-阅读程序并写出运行结果理解(1)
- 指出下列程序的正确运行结果()
- 第12周项目1阅读程序写出运行结果1
- 第13周 阅读程序,写出运行结果。(1)虚函数