• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            保護模式和實模式

            Posted on 2009-10-17 00:08 S.l.e!ep.¢% 閱讀(439) 評論(0)  編輯 收藏 引用 所屬分類: 系統低層
            WIN32 程序運行在保護模式下的,保護模式的歷史可以追溯到 80286。而今 80286 已成為了歷史。所以我們將只把精力集中于 80386 及后續的X86 系列 CPU。Windows 把每一個 Win32 應用程序放到分開的虛擬地址空間中去運行,也就是說每一個應用程序都擁有其相互獨立的 4GB 地址空間,當然這倒不是說它們都擁有 4GB 的物理地址空間,而只是說能夠在 4GB 的范圍內尋址。操作系統將會在應用程序運行時完成 4GB 的虛擬地址和物理內存地址間的轉換。這就要求編寫應用程序時必須格守 Windows 的規范,否則極易引起內存的保護模式錯誤。而過去的 Win16 內存模式下,所有的應用程序都運行于同一個 4GB 地址空間,它們可以彼此"看"到別的程序的內容,這極易導致一個應用程序破壞另一個應用程序甚至是操作系統的數據或代碼。
            和 16 位 Windows 下的把代碼分成 DATA,CODE 等段的內存模式不同,WIN32 只有一種內存模式,即 FLAT 模式,意思是"平坦"的內存模式,再沒有 64K 的段大小限制,所有的 WIN32 的應用程序運行在一個連續、平坦、巨大的 4GB 的空間中。這同時也意味著您無須和段寄存器打交道,您可以用任意的段寄存器尋址任意的地址空間,這對于程序員來說是非常方便的,這也使得用32位匯編語言和用C語言一樣方便。 在Win32下編程,有許多重要的規則需要遵守。有一條很重要的是:Windows 在內部頻繁使用 ESI,EDI,EBP,EBX 寄存器,而且并不去檢測這些寄存器的值是否被更改,這樣當您要使用這些寄存器時必須先保存它們的值,待用完后再恢復它們,一個最顯著的應用例子就是 Windows 的 CallBack 函數中。

            1. 實模式 64K段限制的原因?
            2. Win32下的平坦模式具體是什么? 實模式下沒有所謂的平擔模式?
            国产精品日韩深夜福利久久| 久久久av波多野一区二区| 久久久久久久综合日本亚洲| 97热久久免费频精品99| 久久人人爽人人爽人人片AV不| 久久久老熟女一区二区三区| 国产午夜免费高清久久影院| 国产福利电影一区二区三区久久久久成人精品综合 | 久久亚洲精品中文字幕| 秋霞久久国产精品电影院| 久久国产福利免费| 久久ww精品w免费人成| 久久精品国产亚洲一区二区三区| 亚洲精品无码久久久久去q| 久久精品国产亚洲77777| 久久久久99精品成人片| 成人久久综合网| 欧美日韩久久中文字幕| 国内精品久久久久影院网站| 欧美一区二区三区久久综| 伊人久久大香线蕉成人| 国产真实乱对白精彩久久| 99久久人妻无码精品系列| 麻豆亚洲AV永久无码精品久久| 久久影视综合亚洲| 亚洲精品高清久久| 久久综合欧美成人| 久久ww精品w免费人成| 色综合久久久久无码专区| 久久久亚洲AV波多野结衣| 精品久久久久久国产牛牛app| 久久综合久久综合久久| 日本人妻丰满熟妇久久久久久| 精品综合久久久久久98| 无码乱码观看精品久久| 久久99精品九九九久久婷婷| 精品久久久久久久| 日韩精品国产自在久久现线拍| 99久久免费国产精品| 久久99精品久久久久久水蜜桃| 国产精品无码久久久久|