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

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] ## 加載/保存(讀取/寫入) * 如果要訪問內存,不好意思,你只能用**load**或者**store**指令 * 其他的只能都一律是寄存器操作 ``` //從內存中 復制 RAM_source 的內容到 對應的寄存器中(lw中的'w'意為'word',即該數據大小為4個字節) lw register_destination, RAM_source //同上, lb 意為 load byte lb register_destination, RAM_source //將指定寄存器中的數據 寫入 到指定的內存中 sw register_source, RAM_destination // 同上, b 為 byte sb register_source, RAM_destination //這里的 li 意為 load immediate li register_destination, value ``` ## 立即與間接尋址 直接給地址 ``` // 將var1的內存地址復制到寄存器$t0中 la $t0, var1 ``` 地址是寄存器的內容(可以理解為指針) ``` // 將包含在$t0中的內存地址的字加載到$t2中 lw $t2, ($t0) // 將寄存器$t2中的字存儲到內存中$t0中包含的地址 sw $t2, ($t0) ``` 偏移量 ``` // 將內存地址($t0+4)的字加載到寄存器$t2中 lw $t2, 4($t0) // 將寄存器$t2中的字存儲到內存中的地址($t0 - 12) sw $t2, -12($t0) ``` * 要用到偏移量的尋址,基本上使用最多的場景無非兩種:數組,棧 實例 ``` .data array1: .space 12 # declare 12 bytes of storage to hold array of 3 integers                    # 定義一個 12字節 長度的數組 array1, 容納 3個整型 .text __start: la $t0, array1 # load base address of array into register $t0                   # 讓 $t0 = 數組首地址 li $t1, 5 # $t1 = 5 ("load immediate") sw $t1, ($t0) # first array element set to 5; indirect addressing                   # 對于 數組第一個元素賦值 array[0] = $1 = 5 li $t1, 13 # $t1 = 13 sw $t1, 4($t0) # second array element set to 13                    # 對于 數組第二個元素賦值 array[1] = $1 = 13                    # (該數組中每個元素地址相距長度就是自身數據類型長度,即4字節, 所以對于array+4就是array[1]) li $t1, -7 # $t1 = -7 sw $t1, 8($t0) # third array element set to -7                   # 同上, array+8 = (address[array[0])+4)+ 4 = address(array[1]) + 4 = address(array[2]) done ```
                  <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>

                              哎呀哎呀视频在线观看