生活随笔
收集整理的這篇文章主要介紹了
[MIPS汇编语言]输入输出演示(数组)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
輸入輸出顯示
用數組存儲
代碼如下:有詳細的注釋講解
.text
.globl main
main:la $t6,array # 將數組地址其實地址放到 t6位置上move $t7 $zero # 用于計數 控制輸入addi $t8 $zero 10
input:la $a0 input_msg # 將輸入信息放到a0 這個寄存器上li $v0 4 # 將命令符寄存器中放入立即數4 用于字符輸出syscall # 輸入提示符的輸入完成li $v0 5 # 調用了輸入命令 5 裝載到$v0上syscall # 系統調用 輸入的數被放到了v0上move $t0 $t7 # 將臨時的計數寄存器中的內容放到臨時寄存器t0上mul $t0 $t0 4 # 得到了在該點的地址偏移值addu $t0 $t0 $t6 # 將數組地址加上了偏移量t0,得到當前地址 sw $v0 0($t0) # 將$vo中的數放到t0對應的地址中addi $t7 $t7 1 # 對計數的$t7進行加一操作blt $t7 $t8 input # 如果不相等,就循環該進程output: move $t7 $zero # 用于計數 控制輸入addi $t8 $zero 10 # 總共有10個數
print_all:move $t0,$t7 # 將 t7的數放到這個臨時的t0上mul $t0,$t0,4 # 得到偏移量addu $t0,$t0,$t6 # 這里使用add也是一樣的 只是add 會檢驗下溢出問題lw $a0,0($t0) # 所得到的地址的的數 load到 a0上li $v0,1 syscall addi $t7,$t7,1 blt $t7,$t8,print_all li $v0 10 # 退出 syscall
.data array:.space 1024 # 開辟數組空間 input_msg:.ascii "Input number: " # 輸入數字提示符space_str:.ascii " " # 輸出空格信息
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀
總結
以上是生活随笔為你收集整理的[MIPS汇编语言]输入输出演示(数组)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。