8086的内存分段机制
生活随笔
收集整理的這篇文章主要介紹了
8086的内存分段机制
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1 代碼段和數據段
- 2 8086的分段機制
- 2.1 8086的分段機制
1 代碼段和數據段
對于我們的程序來說,通常分為代碼段和數據段:
對于上面的代碼使用的是絕對地址,當我們的操作系統把數據段不是加載在0x0100的地址時,就會出現訪問數據的錯誤。這其實就是重定位的問題,需要借用段寄存器解決:
我們需要知道如下幾點:
2 8086的分段機制
2.1 8086的分段機制
8086的處理器地址引線:20根,那么邏輯地址就是20位。而我們的寄存器只有16位,為了解決這個問題:段地址實際上也是20位,將段寄存器中的值左移4位(每個分段必須加載到地址最低位為0的位置,相對于16進制表示而言)。偏移地址仍然是16位,也就意味著每個段的最大長度為65536個字節。
參考資料:
總結
以上是生活随笔為你收集整理的8086的内存分段机制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 启动修复软件 u盘启动不了怎么办 U盘启
- 下一篇: ++和--操作符分析