<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 第8章 輸入 輸出 這一章中從以下幾點講述了80386的I/O特性: + I/O端口尋址方法(Methods of addressing I/O ports) + 引起I/O操作的指令(Instructions that cause I/O operations) + 當使用I/O指令和訪問I/O端口時使用的保護規則(Protections as it applies to the use of I/O Instructions and I/O port addresses) ### 8.1.1 I/O 地址空間(I/O Address Space) 80386提供了獨立的I/O地址空間,不同于物理內存空間,這些空間可以為16位設備端口來尋址。I/O地址空間由此2^16(64K)獨立的可尋址8-位端口組成。任何兩個連續的8-位端口可以當作一個16-位端口,4個連續的8-位端口可以當作一個32-位的端口。所以I/O地址空間總計64K個8-位端口,或者說32K個16-位端口,或者說16K個32-位端口。 程序可以以兩種方式指定端口地址。通過使用立即數,程序可以指定: + 256個8-位端口,從0~255。 + 128個16-位端口,從0,2,4,……,252,254。 + 64個32-位端口,從0,4,8,……,248,252。 通過使用DX來指定: + 8-位端口,編號從0到65535 + 16-位端口,編號從0,2,4,……,65532,65534 + 32-位端口,編號從0,4,8,……,65528,65532 80386可以一次傳送給指定地址的外設32、16、或8位數據。和在內存中的雙字一樣,32-位的端口地址應該可以被4整除,似便32-位數據可以在一次總線周期內傳送完。16位的應該被2整除,8位的可以指定任何的地址。 IN和OUT指令在寄存器與端口間傳送數據。INS和OUTS在內存和I/O地址空間之間傳送整串的數據。 ### 8.1.2 內存映射 I/O I/O設備也可以放在主內存空間中。只要設備象內存一樣的作出合適的反應,處理器并區別不出他們。 內存映射I/O指供了外加的編程伸縮性。任何訪問內存的指令都可以用來訪問位于內存空間的I/O設備。例如,MOV指令可以在寄存器和端口間傳送數據。還有AND,OR,和TEST指令可以用來控制在外設內部的寄存器的位(見圖8-1)。內存映射I/O可以使用任何尋址模式的指令(真接,間接,其址,索引,標量等)。 內存映射I/O和其它任何內存訪問相同,在保護模式下有相同的保護的控制。參看第6章,關于內存保護。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看