假设有6行8列的二维数组A(下标从1开始),每个元素占用8个字节,存储器按字节编址,已知A的起始基地址为2000,按行存储时元素A[3,6]的地址为
时间: 2023-06-19 17:04:44 浏览: 72
首先需要计算出A[1,1]的地址,由于每个元素占用8个字节,因此A[1,2]的地址为A[1,1] + 8,A[2,1]的地址为A[1,1] + 6 * 8(因为每行有8个元素),以此类推,可以得到A[3,6]的地址为:
A[1,1] + (3-1)*8*8 + (6-1)*8
= 2000 + 16*8 + 40
= 2136
因此,元素A[3,6]的地址为2136。
相关问题
假设有6行8列的二维数组A(下标均从1开始),每个元素占用6个字节,存储器按字节编址,已知A的基地址为2000。则数组最后一个元素的地址为 。
由于每个元素占用6个字节,因此每一行占用的字节数为 $8\times 6=48$ 字节。因此,数组中第 $i$ 行的起始地址为 $2000+(i-1)\times 48$。
最后一个元素位于第6行第8列,因此它的行下标为6,列下标为8。该元素在数组中的偏移量为 $(6-1)\times 48+(8-1)\times 6=267$ 字节。
因此,该元素的地址为 $2000+267=2267$。
已知二维数组A[0..5][0..7](行下标为0到5,列下标为0到7),每个元素占用2个字节存储,存储器按字节编址,若A[0][0]的地址为2000,则按行优先存储时元素A[3][4]的地址是( )
由于每个元素占用2个字节存储,因此A[0][0]到A[5][7]的地址分别为:
A[0][0]: 2000
A[0][1]: 2002
A[0][2]: 2004
...
A[1][0]: 2016
A[1][1]: 2018
...
A[5][6]: 2152
A[5][7]: 2154
因此,按行优先存储时,元素A[3][4]的地址为:
A[3][4] = 2000 + (3*8+4)*2 = 2088
阅读全文