杭電計算機組成實驗6(六)MIPS彙編器與模擬器實驗
實驗內容
1. 學習 MIPS指令系統,熟悉 MIPS指令格式及其彙編指令助記符,掌握機器
指令編碼方法
2. 學習 MIPS彙編程式設計,學會使用 MIPS 彙編器將組合語言程式翻譯成二
進位制檔案
3. 瞭解使用 MIPS教學系統模擬器執行程式的方法
解決方法
1. 下載 PCSpim 軟體
2. 給大家一個下載的地方,只要關注我,就可以下載到PCSpim下載地址
3. 按照書上的要求,在文字編輯器中輸入彙編程式,然後裝入PCSpim
4. 左側內為指令地址,中間是十六進位制的指令編碼,右側是相應的標準彙編指
令,主要注意的是第二個程式,必須在裸機執行方式
5. 書上的彙編和結果展示:
test.asm
main: li $v0 , 5
syscall
move $t0,$v0
li $v0,5
syscall
move $t1 , $v0
bgt $t0,$t1,t0_bigger
move $t2,$t1
b endif
t0_bigger : move $t2,$t0
endif :move $a0,$t2
li $v0,1
syscall
jr $ra
R_CPU_Test.asm
main:nor $1,$0,$0; #$1 = FFFF_FFFF
sltu $2,$0,$1; #$2 = 0000_0001 if($2<$3) $1=1 else $1=0
add $3,$2,$2; #$3 = 0000_0002
add $4,$3,$2; #$4 = 0000_0003
add $5,$4,$3; #$5 = 0000_0005
add $6,$5,$3; #$6 = 0000_0007
sllv $7,$6,$2; #$7 = 0000_000E $1=$2<<$3
add $9,$5,$6; #$9 = 0000_000C
sllv $8,$6,$9; #$8 = 0000_7000
xor $9,$1,$8; #$9 = FFFF_8FFF
add $10,$9,$1; #$10 = FFFF_8FFE
sub $11,$8,$7; #$11 = 0000_6FF2
sub $12,$7,$8; #$12 = FFFF_900E
and $13,$9,$12; #$13 = FFFF_800E
or $14,$9,$12; #$14 = FFFF_9FFF
or $15,$6,$7; #$15 = 0000_000F
nor $16,$6,$7; #$16 = FFFF_FFF0
add $17,$7,$3; #$17 = 0000_0010
sllv $18,$8,$17; #$18 = 7000_0000
sllv $19,$3,$17; #$19 = 0002_0000
sllv $20,$19,$7; #$20 = 8000_0000
add $21,$20,$1; #$21 = 7FFF_FFFF
or $22,$18,$21 #$22 = 7FFF_FFFF
add $23,$20,$22; #$23 = FFFF_FFFF
sub $24,$20,$22; #$24 = 0000_0001
sub $25,$22,$20; #$25 = FFFF_FFFF
xor $26,$18,$1; #$26 = 8FFF_FFFF
sltu $27,$22,$20; #$27 = 0000_0001
sltu $28,$26,$20; #$28 = 0000_0000
add $29,$22,$2; #$29 = 8000_0000
sub $30,$20,$2; #$30 = 7FFF_FFFF
add $31,$11,$26; #$31 = 9000_6FF1
結果機器碼展示
00000827 0001102b 00421820 00622020 00832820 00a33020 00463804 00a64820 01264004 00284826 01215020 01075822 00e86022 012c6824 012c7025 00c77825 00c78027 00e38820 02289004 02239804 00f3a004 0281a820 0255b025 0296b820 0296c022 02d4c822 0241d026 02d4d82b 0354e02b 02c2e820 0282f022 017af820
相關文章
- 計算機系統6-> 計組與體系結構3 | MIPS指令集(中)| MIPS彙編指令與機器表示計算機
- 彙編初識與計算機組成計算機
- 彙編 實驗3
- 彙編 實驗2
- 彙編 實驗四
- 彙編 實驗五
- 彙編 實驗九
- 彙編 實驗一
- 實驗六 有源濾波器
- (6)從計數器到可控線性序列機——led實驗六部曲
- 計算機組成與設計(4)-----處理器計算機
- 《計算機網路實驗課程》——Wireshark實驗計算機網路
- 計算機網路實驗報告:【Wirshark 實驗】計算機網路
- 計算機網路實驗:【Cisco Packet Tracer 實驗】計算機網路
- 計算機網路驗證性實驗計算機網路
- 計算機網路實驗計算機網路
- 計算機網路實驗三—— Cisco Packet Tracer 實驗計算機網路
- 《計算機組成與體系結構》——8.2機器指令計算機
- RHEL9.4搭建虛擬機器實驗環境虛擬機
- 計算機網路實驗二計算機網路
- 計算機網路實驗三計算機網路
- Web 魔方模擬器的設計與實現Web
- 實驗一:百度機器翻譯SDK實驗
- 彙編實驗小記(五)-迴圈程式設計程式設計
- 實驗六
- 計算機網路實驗總結計算機網路
- 阿里量子實驗室推出量子電路模擬器「太章」:成功模擬81位元40層量子電路阿里
- 第三章 板載感測器實驗(6、計時器)
- VirtualBox在NAT模式下虛擬機器與宿主機互相通訊實驗截圖模式虛擬機
- 《計算機網路微課堂》實驗1 訪問WEB伺服器計算機網路Web伺服器
- Cisco Packet Tracer NAT模擬實驗
- LInux實驗 : 程式排程模擬Linux
- VirtualBox下Linux虛擬機器實驗常見錯誤合集Linux虛擬機
- 強大的網路模擬器和實驗平臺-EVE-NG
- EVE-NG強大的網路模擬器和實驗平臺
- 計算機實驗室之樹莓派計算機樹莓派
- ROS2GO+Cozmo=口袋機器人之人工智慧模擬和實驗平臺ROSGo機器人人工智慧
- 計算機網路實驗一:vlan的建立與劃分計算機網路