<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] ![](https://img.kancloud.cn/f1/64/f164c5549933e76e6c4f3a479dacfbf7_1121x874.png) ![](https://img.kancloud.cn/4a/54/4a54267a87710d45028df1407b5222a0_230x472.png)![](https://img.kancloud.cn/3b/37/3b3766920f1e0d0a7f2197ae8082864c_538x313.png) ![](https://img.kancloud.cn/a8/39/a83937da5bf55ef66f0a5e205bc3b5e1_1849x991.png) ![](https://img.kancloud.cn/07/f7/07f7cef3c9f3a9105cfdb37d9d332e4a_820x442.png) ## **編寫源程序** ### **新建test.asm文件,然后編寫求2^3的代碼** 這個可以用記事本、sublime([**NASM x86 Assembly**](https://blog.csdn.net/qq_35572368/article/details/104984317)插件可以高亮)、editPlus或者edit.exe 這里介紹edit.exe使用方法。打開dos ![](https://img.kancloud.cn/e1/63/e163b3e2d9b8e34ee1a6fcb7a35865ff_435x426.png) 看到dos的c盤已經映射到edit.exe所在的目錄,dos中鍵入edit回車啟動編輯器,然后編寫匯編代碼并保存為test.asm: ![](https://img.kancloud.cn/d8/0a/d80a75b7e949b19362ac0999bb356d55_654x433.png) ![](https://img.kancloud.cn/f6/f1/f6f12e74ef58cc2d93300a1675807827_244x231.png) ![](https://img.kancloud.cn/b3/af/b3af389f74508f61507d6887afef2622_1064x458.png) ``` assume cs:abc abc segment mov ax,2 add ax,ax add ax,bx mov ax,4c00H int 21H abc ends end ``` 步驟:![](https://img.kancloud.cn/f5/3a/f53a35d3e41a50e5f4c3b5203766ab0c_1078x782.png) ### **MASM.exe編譯獲得目標文件:xxx.obj** ![](https://img.kancloud.cn/2f/3c/2f3c10d64d37c25773ec43a90f154c14_626x376.png) 看到dos的c盤已經映射到MASM.exe所在的目錄,dos中鍵入masm+回車啟動微軟的編譯器MASM.exe ![](https://img.kancloud.cn/5d/e8/5de8d340af2325895fa1cebe13dc6cb2_896x265.png) 指定目錄及文件名 ![](https://img.kancloud.cn/35/d3/35d3e1d4e545425eab6bd92ebfb0c317_569x212.png) ![](https://img.kancloud.cn/53/39/5339c00efb9c8a356111a085a9eb1baf_640x215.png) **簡化方式編譯:必須加分號** ``` masm test; ``` ![](https://img.kancloud.cn/81/f7/81f7ca5de9046896612ab829be78c055_687x157.png) ### **LINK.exe連接目標文件xxx.obj以獲取可執行文件xxx.exe** ![](https://img.kancloud.cn/16/c0/16c037d7f9c3fb0a1f03779510285fc5_641x207.png) ![](https://img.kancloud.cn/d3/c4/d3c40d5a63770a582e4bde4266aa4590_160x112.png) ![](https://img.kancloud.cn/34/70/34708ae3c1f8b33607219b49080eb203_946x528.png) **簡化方式連接:必須加分號** ``` link test; ``` ![](https://img.kancloud.cn/4a/e8/4ae8950321470d3b0e1d5407ef44c488_622x125.png) ### **xxx.exe的執行** 看不到結果是應為沒有想顯示器輸出結果 ![](https://img.kancloud.cn/e6/ff/e6ffe7727581aef60f8a8a4601818aaf_642x54.png) ![](https://img.kancloud.cn/83/8b/838be550408767d091361da870a95cec_569x380.png) 我們在前面講過,在DOS中,可執行文件中的程序P1若要運行,必須有一個正在運行的程序P2,將P1從可執行文件中加載入內存,將CPU的控制權交給它, P1才能得以運行;當P1運行完畢后,應該將CPU的控制權交還給使它得以運行的程序P2. 按照上面的原理,test.exe的執行過程(思考相關的問題)。 * (1)在提示符"c:masm"后面輸入可執行文件的名字"test",按Enter鍵。這時,有一個正在運行的程序將test.exe中的程序加載入內存,這個正在運行的程序是什么?它將程序加載入內存后,如何使程序得以運行? * >[info] (1)在DOS中直接執行test.exe時,是正在運行的command,將1.exe中的程序加載入內存 * (2) 1.exe中的程序運行。 * >[info] (2) command設置CPU的CS:IP指向程序的第一條指令(即程序的入口),從而使程序得以運行: * (3)運行結束,返回,再次顯示提示符"c:masm" 。程序運行結束后,返回到哪里? * >[info] (3)程序運行結束后,返回到command中, CPU繼續運行command. ## **debug跟蹤程序執行** 編寫匯編程序并編譯連接為p1-1.exe ~~~ assume cs:codesg codesg segment mov ax,0123H add bx,0456H add ax,bx add ax,ax mov ax,4c00H int 21H codesg ends end ~~~ 執行`debug p1-1.exe` r查看 ****數據段寄存器DS**為075A、(代碼)段寄存器cs** 為076A ![](https://img.kancloud.cn/f9/77/f97788a6bd4dc7ac93bb94678a86d083_1833x1005.png) ![](https://img.kancloud.cn/50/33/50335db5035619403fb63482d1b5d68f_1826x988.png) ![](https://img.kancloud.cn/3c/6b/3c6bb5313a11935b5561ce65052fd91a_1866x1035.png) ![](https://img.kancloud.cn/e5/45/e545ca83abb0e4c74d993a14d27f3ebc_1836x1016.png)
                  <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>

                              哎呀哎呀视频在线观看