?? zhao9g.asm
字號:
****************************************
* |被除數|>=|除數|,商為整數 *
* 計算0.66/(-0.33)的值 *
****************************************
.title "zhao9g.asm"
.mmregs
STACK .usect "STACK",10H
.bss num,1 ;分子
.bss den,1 ;分母
.bss quot,1 ;商
.data
table: .word 66*32768/100 ;0.66-->0x544A
.word -33*32768/100 ;-0.33-->0xD5C3
.def start
.text
start: LD #0020H,DP ;指定數據頁指針
STM #num,AR1
RPT #1
MVPD table,*AR1+ ;傳送2個數據至分子、分母
LD @den,16,A ;將分母移到累加器A(31~16)
MPYA @num ;(num)*(A(31~16))->B,獲取商的符號
;(在累加器B中)
ABS A ;分母取絕對值
STH A,@den ;分母取絕對值存回原處
LD @num,A ;將分子移到累加器A(32~16)
ABS A ;分子取絕對值
RPT #15 ;16次減法循環,完成除法
SUBC @den,A
XC 1,BLT ;如果B<0(商為負數),則需要變號
NEG A
STL A,@quot ;保存商
end: B end
.end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -