組合語言邏輯地址轉換為實體地址,組合語言把下列邏輯地址轉換成實體地址分頁定址,總容量4Gbyte,不可見暫存器CR3中的內容是2000H

2021-03-03 20:36:45 字數 1139 閱讀 4706

1樓:匿名使用者

演算法:實體地址=段首地址*10h+偏移地址

你的問題裡前面數值代表段首地址,後面數值代表偏移地址按照公式直接算就可以看了,比如:39ab:b087

實體地址=39abh*10h+b087=44b37

2樓:匿名使用者

前面的乘以10h加上後面的,例如(1):39abh×10h+b087h=44b37h

3樓:匿名使用者

電腦內的計算機功能可以運算。

組合語言:把下列邏輯地址轉換成實體地址(分頁定址,總容量4g-byte,不 可見暫存器cr3 中的內容是2000h)

4樓:**__暗夜幽靈

一個頁表項管

理4kb空間,一個頁目錄項管理4mb空間,由於0xc8090 / 0x400000 = 00xc8090 / 0x1000 = 0xc80xc8090 % 0x1000 = 0x90所以為頁目錄表中

第版0條指向的頁表中第0xc8項指權向的條目.

因為cr3為0x2000,所以頁目錄表的地址為0x2000到0x2000處查詢,值為0x3003,低12為為屬性,所以實際頁表的的地址是0x3000

於是頁表項的地址為0x3000 + 0xc8 * 4 = 0x3320

所以頁面地址為0x3320所指向的頁面,同樣要忽略低12位,所以頁面起始地址為0x112000

實體地址為0x112000 + 0x90 = 0x112090剩下兩個地址計算方法相同

第二問和第一問一回事,只不過問所對應的記憶體裡放的啥東西,自行解決.

啥課程能考這麼偏門的玩意

組合語言程式設計時採用邏輯地址還是實體地址?

5樓:匿名使用者

真實模式下實體地址

保護模式下邏輯地址

一般支援多工的系統 就是邏輯地址(win32)dos時代是實體地址

6樓:吉列微風

8086/8088彙編下采用的大多是邏輯地址(偏移量)不知道樓主玩的是8086/8088的彙編呢,還是win32 的彙編?

7樓:匿名使用者

要看系統,晶片廠商,一般實體地址

組合語言中si表示地址還是內容,組合語言中 SI 表示地址還是內容

si 是暫存器間接定址,它是指si中地址的內容,所以是具體內容,si是地址。在x86彙編中,中括號就相當於c語言的星號,即指標,mov x,地址 相當於x p一樣,是取內容。若mov si 100 則si代表 100 si 代表 地址為100的記憶體單元中的內容 記住,有的代表記憶體單元裡面 的內容...

組合語言編寫AT89C52,組合語言編寫AT89C

怎麼都是輸出?沒有輸入作依據,根據什麼輸出不同的值?把題目改為 p1.0口輸入為1,則p1.3口輸出為1,p1.0口輸入為0,則p1.3口輸出為0,p1.1口輸入為1,則p1.4口輸出為1,p1.1口輸入為0,則p1.4口輸出為0 程式 org 0000h mov c,p1.0 mov p1.3,c...

組合語言程式設計的問題,組合語言程式設計問題

1.jmp bx 如果 bx 1020h,那麼 ip 1020h,因為此種形式為通過暫存器的段內間接轉移,執行時將把暫存器的內容直接送ip,所以執行此指令後ip的值為1020h 2.jmp tab bx si 如果 ds 2000h,bx 1020h,si 0002h,tab 0010h,21032...