Nama     : Lisen Danelp
N.I.M    : 12131291
Kelas     : 12.2C.06

Soal :
Buatlah ilustrasi tabel, pemetaan RMO & CMO, Jalur perpindahan serta hitunglah hasilnya dalam Hexa array - array dibawah ini :

  1. Array Float A[5] dengan nilai awal A[1] = 002F[H]. Berapa nilai A[3]?
  2. Array Float A[10] dengan nilai awal A[8] = 012F[H]. Berapa nilai A[3]?
  3. Array Float A[5][4] dengan nilai awal A[1][0] = 002F[H]. Berapa nilai A[3][3]?
  4. Array Int A[5][4] dengan nilai awal A[3][3] = 00CF[H]. Berapa nilai A[0][1]?

Jawaban :

1.   Array Float A[5] dengan nilai awal A[1] = 002F[H]. Berapa nilai A[3] ..?

Diketahui
A[i] = A[3]
B    = 2F[A]
i      = 3
L    = 4

Penyelesaian
A[i]  = B + (i – 1) * L
A[3] = 2F(H) + (3 – 1) * 4
A[3] = 2*17(H) + 8(D)
A[3] = 34(H) + 8(H)
A[3] = 42(H)

            0                         1                         2                           3                         4
A[1] A[2] A[3] A[4] A[5]
          034                      038                      042                     046                      050


2.   Array Float A[10] dengan nilai awal A[8] = 012F[H]. Berapa nilai A[3]..?

Diketahui
A[i] = A[3]
B    = 12F[A]
i      = 3
L    = 4

Penyelesaian
A[i]  = B + (i – 1) * L
A[3] = 12F(H) + (3 – 1) * 4
A[3] = 12*17(H) + 8(D)
A[3] = 204(H) + 8(H)
A[3] = 212(H)

      0          1            2           3           4           5           6            7           8             9
A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10]
    204       208       212       216        220       224       228        232       236         240


3.   Array Float A[5][4] dengan nilai awal A[1][0] = 002F[H]. Berapa nilai A[3][3]?

Index 0 1 2 3
0
                          
1 2F(H)


2



3


?
4




Rumus
RMO : @M[i][j] = M[0][0] + {(j - 1) * K + (i - 1)} * L
CMO : @M[i][j] = M[0][0] + {(i - 1) * N + (j - 1)} * L

Keterangan
@M[i][j] = Posisi Array yg dicari
M[0][0]   = Posisi alamat awal index Array
i               = Baris
j               = kolom
L              = Ukuran memory type data
K             = Banyaknya elemen per kolom
N             = Banyaknya elemen per baris

Jawaban Secara Baris Per Baris (Row Major Oder / RMO)

Jalur Perpindahan
Float 4 byte
Perpindahan baris   : 2 - 0 = 2 * 4 (kolomnya) = 8
Perpindahan kolom : 3 - 0 = 3
Total perpindahan   : 8 + 3 = 11
A[1][0] >> A[1][1] >> A[1][2] >> A[1][3] >> A[2][0] >> A[2][1] >> A[2][2] >>
A[2][3] >> A[3][0] >> A[3][1] >> A[3][2] >> A[3][3]

Hasil
@A[i][j] = @A[1][0] + {(i - 1) * N + (j - 1)} * L
A[3][3]   = 2F(H)      + {(5 - 1) * 5 + (4 - 1)} * 4
A[3][3]   = 2*17(H)  +             23                   * 4
A[3][3]   = 34(H)      +             92(D)
A[3][3]   = 34(H)      +             5C(H)
A[3][3]   = 34(H)      +              60(H)
A[3][3]   = 94(H)

Jawaban Secara Kolom Per Kolom (Coloumn Major Oder / CMO)

Jalur Perpindahan
Float 4 byte
Perpindahan baris   : 3 - 0 = 2 * 5 (kolomnya) = 15
Perpindahan kolom : 2 - 0 = 2
Total perpindahan   : 15 + 2 = 17
A[2][0] >> A[3][0] >> A[4][0] >> A[0][1] >> A[1][1] >> A[2][1] >> A[3][1] >>
A[4][1] >> A[0][2] >> A[1][2] >> A[2][2] >> A[3][2] >> A[4][2] >> A[0][3] >>
A[1][3] >> A[2][3] >> A[3][3]

Hasil
@M[i][j] = @M[1][0] + {(j - 1)  * K + (i - 1)} * L
A[3][3]   = 2F(H)        + {(4 - 1) * 4 + (5 - 1)} * 4
A[3][3]   = 2*17(H)    +              16                  *4
A[3][3]   = 34(H)        +              64(D)
A[3][3]   = 34(H)        +              40(H)
A[3][3]   = 74(H)


4.   Array Int A[5][4] dengan nilai awal A[3][3] = 00CF[H]. Berapa nilai A[0][1]?

Index 0 1 2 3
0
    ?                     
1          


2



3


C(F)
4




Rumus
RMO : @M[i][j] = M[0][0] + {(j - 1) * K + (i - 1)} * L
CMO : @M[i][j] = M[0][0] + {(i - 1) * N + (j - 1)} * L

Keterangan
@M[i][j] = Posisi Array yg dicari
M[0][0]   = Posisi alamat awal index Array
i               = Baris
j               = Kolom
L              = Ukuran memory type data
K             = Banyaknya elemen per kolom
N             = Banyaknya elemen per baris

Jawaban Secara Baris Per Baris (Row Major Oder / RMO)

Jalur Perpindahan
Float 4 byte
Int 2 byte
Perpindahan baris   : 0 - 3 = -3 * 4 (kolomnya) = -12
Perpindahan kolom : 1 - 3 = -2
Total perpindahan   : -12+ (-2) = -14
A[3][2] >> A[3][1] >> A[3][0] >> A[2][3] >> A[2][2] >> A[2][1] >> A[2][0] >>
A[1][3] >> A[1][2] >> A[1][1] >> A[1][0] >> A[0][3] >> A[0][2] >> A[0][1]

Hasil
@A[i][j] = @A[3][3] + {(i - 1) * N + (j - 1)} * L
A[0][1]  = CF(H) - {(5 - 1) * 5 + (4 - 1)}      * 2
A[0][1]  = 12*17(H) -               23                 * 2
A[0][1]  = 204(H)     -               46(D)
A[0][1]  = 204(H)     -               2E(H)
A[0][1]  = 204(H)     -               32(H)
A[0][1]  = 172(H)

Jawaban Secara Kolom Per Kolom (Coloumn Major Oder / CMO)

Jalur Perpindahan
Int 2 byte
Perpindahan baris   : 1 - 3 = -2 * 5 (kolomnya) = -10
Perpindahan kolom : 0 - 3 = -3
Total perpindahan   : -10 + (-3) = -13
A[2][3] >> A[1][3] >> A[0][3] >> A[4][2] >> A[3][2] >> A[2][2] >> A[1][2] >>
A[0][2] >> A[4][1] >> A[3][1] >> A[2][1] >> A[1][1] >> A[0][1]

Hasil
@M[i][j] = @M[3][3] - {(j - 1)  * K + (i - 1)}  * L
A[0][1]   = CF(H)       - {(4 - 1) * 4  + (5 - 1)} * 2
A[0][1]   = 12*17(H)            +           16            * 4
A[0][1]   = 204(H)                 -           64(D)
A[0][1]   = 204(H)                 -          40(H)
A[0][1]   = 164(H)

Post a Comment

 
Top