Bilgisayar bilimlerinde, rowmajor order veya column major order ile,
çok boyutlu (multidimensional) dizilerin (array) dogrusal hafızada
(linear memory) tutulma şekli kastedilmektedir.
Arraylerin
hafızada tutulma biçimleri özellikle diller arasında veri geçişi
yaparken kritik rol oynar. Ayrıca diziye erişim şekli doğru biliniyorsa
ve bu bilgi doğru kullanılıyorsa performansı oldukça etkileyen bir
özelliktir.

Row-major order

Satırların arka arkaya saklandığı linear memory modelinin ismidir. C dilinin kullandığı model de row-major modeldir.
Örneğin:
1 2 3
4 5 6

Masfuf’unun (matrixinin) C dilinde tanımı:

int A[2][3] = { {1, 2, 3}, {4, 5, 6} };

şeklinde yapılır ve bu dizinin hafızadaki tutlma biçimi aslında:

1 2 3 4 5 6

Şeklindedir. Yani A[satır][sütün] şeklinde verilen bir dizini için

offset = satır*sütünsayısı + sütün

Şeklinde verilebilir.
Kolon bazlı sıralamada ise aynı matrix:
1 2 3
4 5 6

aşağıdaki şekilde hafızada tutulacaktır.

1 4 2 5 3 6

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir