- #1
acadian
- 4
- 0
Homework Statement
The problem is finding the memory location of a three-dimentional array Temp. Each index of temp goes from 1 to 100 and each element stores 4 bytes. The array is setup such that the last index varies fastest, aka:
Temp[1,1,1], Temp[1,1,2], ... Temp[1,1,100], Temp[1,2,1]
Temp[1,100,100], Temp[2,1,1], ... Temp[2,1,2], ... Temp[2,1,100], Temp[2,2,1], ... Temp[100,100,100]
Find the address of the array Temp[40,30,20]
Homework Equations
I know that For a three-dimensional array, the formula to compute the offset into memory is the following:
Address = BaseAddress + ((depthindex*col_size+colindex) * row_size + rowindex) * Element_Size
Attempted work
for the array Temp[40,30,20]
Address = BaseAddress + ((depthindex*col_size+colindex) * row_size + rowindex) * Element_Size
BaseAddress = m
Element_size = 4 bytes
Col_size = 100
Row_size = 100
Depthindex = 40
Colindex = 30
Rowindex = 20
Address = m + ( (40*100 + 30)*100 + 20 ) * 4 bytes
= m + ( (4030)*100 + 20 ) * 4 bytes
= m + (403020) * 4 bytes
= m + 1612080
Am I on the right track, here?
Thanks so much!