天天看點

某計算機按位元組編址,采用小端方式存儲資訊/大端方式存儲資訊

1、須知:

大端模式(Big-endian)

高位位元組排放在記憶體的低位址端,低位位元組排放在記憶體的高位址端,即正序排列,高尾端;

某計算機按位元組編址,采用小端方式存儲資訊/大端方式存儲資訊

小端模式(Little-endian)

低位位元組排放在記憶體的低位址端,高位位元組排放在記憶體的高位址端,即逆序排列,低尾端;

某計算機按位元組編址,采用小端方式存儲資訊/大端方式存儲資訊

LSB

英文 least significant bit,中文義最低有效位。

MSB

Most Significant Bit的縮寫,指最高有效位。

某計算機按位元組編址,采用小端方式存儲資訊/大端方式存儲資訊

2、課本例題

某計算機按位元組編址,采用小端方式存儲資訊/大端方式存儲資訊

1 、LSB存放的位址即最低有效位元組位址,由于小端方案,最低有效位元組存儲在最小位址位置。

2 根據基址尋址,該位址為基址寄存器内容+形式位址。

基址寄存器内容:C000 0000H

記憶體:(我們先假設這個資料的LSB為00H)
低位址 | 00|資料低位元組 ,
高位址 | XX|      
LSB為00,這裡形式位址FF00是負數,
  補碼操作如下:

  C000   0000H+     FFFF   FF00H=BFFF     FF00H

 換成原碼操作,
C000 0000H - 0100H ( FF00的原碼為 -0100H) = BFFF      

3、類型題:

某計算機按位元組編址,采用大端方式存儲資訊。其中,某指令的一個操作數的機器數為ABCD00FFH,該操作數采用基址尋址方式,指令中形式位址(用補碼表示)為FF00H,目前基址寄存器的内容為C000 0000H,則該操作數的LSB(即機器數的最後的FFH–低位在記憶體的高位址端)存放的位址是()。

問題1選項

A.C000 FF00H

B.C000 FF03H

C.BFFF FF00H

D.BFFF FF03H

記憶體:
低位址 |  AB|資料高位元組 ,
    | CD|
    | 00|
高位址 | FF|      
LSB為FF,這裡形式位址FF00是負數,
  補碼操縱如下:

  C000  0000h+ FFFF  FF00=BFFF FF00H  
  上一道題實際上求到的位址是我們這道題的ABH(MSB)存放位置,還要再移動3次位元組的位置才到達LSB。
資料每次移動1個位元組(相當于AB->CD),在記憶體中的位址是移動1,
  是以需要移動3,也就是在上一題的基礎上,再加上3
  即是BFFF