以低字节地址为字地址,就是小端存储模式:数据低位(或者说低字节)存储在内存低地址;
以高字节地址为字地址,就是大端存储模式:数据高位(或者说高字节)存储在内存低地址。
现在看一个例题:
这个题目有一个需要明确的地方:什么是第一、第二、第三字节?
对于一个有三个字节的数据来说,第一字节就是其中内存地址最小的那个字节。
因此,对于题目要求的小端模式而言,数据的低字节要存放在内存低地址,而操作码OP是第一字节,因此OP放在内存低地址,有:
容易知道,偏移量为:
其中,2F是数据低字节,又因为OP已经占了第一字节,因此2F只能放在第二字节,最后:
因此,答案为:第二字节是2F,第三字节是00。
可以发现,如果我们将其写成一个字的形式,是很反直觉的:
如果我们将题目改成“以高字节地址为字地址”呢?
显然因为操作OP码是第一字节,又因为大端存储,有: