题目
一个32位的数据0×12345678,存放在内存地址为0x8010~0x8013,存储模式为大端[1]模式,则地址0×8010存储的数据为( )A.12B.0x12C.78D.0x78
一个32位的数据0×12345678,存放在内存地址为0x8010~0x8013,存储模式为大端[1]模式,则地址0×8010存储的数据为( )
A.12
B.0x12
C.78
D.0x78
题目解答
答案
根据题目中的信息,数据 0x12345678 被存储在内存地址范围为 0x8010 到 0x8013,并且使用大端模式进行存储。大端模式是指高位字节存储在低地址,低位字节存储在高地址。
数据 0x12345678 是一个32位的整数,可以分为四个字节,每个字节是8位。
高位字节(MSB): 12
次高位字节: 34
次低位字节: 56
低位字节(LSB): 78
根据大端模式,高位字节 12 被存储在低地址 0x8010,然后依次向高地址递增存储各个字节。
所以,地址 0x8010 存储的数据为 0x12,因此,本题选择B选项。
解析
大端模式(Big-endian)的核心特点是高位字节存储在低地址,低位字节存储在高地址。本题中,32位数据0x12345678需要拆分为4个字节,按高位到低位的顺序依次存储。关键在于明确字节拆分方式和存储顺序。
-
拆分32位数据为字节
0x12345678是32位十六进制数,每两位代表一个字节,拆分结果为:- 最高字节(MSB):
0x12 - 次高字节:
0x34 - 次低字节:
0x56 - 最低字节(LSB):
0x78
- 最高字节(MSB):
-
按大端模式存储
- 地址
0x8010(最低地址)存储最高字节0x12 - 地址
0x8011存储次高字节0x34 - 地址
0x8012存储次低字节0x56 - 地址
0x8013(最高地址)存储最低字节0x78
- 地址
-
确定答案
地址0x8010对应存储的字节为0x12,对应选项B。