某 64 位计算机存储系统中有符号整数数据类型规定为:char 为 8 位、short 为 16 位、int 为 32 位、long 为 64 位,存储模式为小 端模式,假设数据块是从地址$1000 单元开始依次向高地址单元存 储,试根据边界对齐原则写出如下数据块在存储器中的映像: char m1=10; long m2=-1000; char m3=-20; short m4=128; short m5=-6400; int m6=255;
时间: 2023-06-16 12:02:25 浏览: 69
根据边界对齐原则,每个变量的存储地址必须是其数据类型大小的整数倍。因此,在存储器中的映像如下:
```
地址: 1000 1001 1002 1003 1004 1005 1006 1007
内容: 0A 00 00 00 D8 FC FF FF
变量名: m1(char) m2(long)
地址: 1008 1009 1010 1011 1012 1013 1014 1015
内容: EC 80 80 FF FF FF 00 00
变量名: m4(short) m5(short) m3(char)
地址: 1016 1017 1018 1019
内容: FF 00 00 00
变量名: m6(int)
```
其中,m1 占用了 1 个字节,m2 占用了 8 个字节,m3 占用了 1 个字节,m4 占用了 2 个字节,m5 占用了 2 个字节,m6 占用了 4 个字节。在存储器中,每个变量的存储地址都是其数据类型大小的整数倍,变量 m1 存储在地址 1000,变量 m2 存储在地址 1001-1008,变量 m3 存储在地址 1009,变量 m4 存储在地址 1010-1011,变量 m5 存储在地址 1012-1013,变量 m6 存储在地址 1016-1019。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)