chuf.asm

来自「CCS调试实验文件夹下共有9个文件夹」· 汇编 代码 · 共 37 行

ASM
37
字号
;***  编制计算除法运算的程序段。其中|被除数|<|除数|,商为小数***
   	.title	"chuf.asm"
	.mmregs
    .def  	start,_c_int00 
    
    .bss	num,1
    .bss	den,1
    .bss	quot,1    
    
    .data
table  	.word  4*32768/10     ;0.4
       	.word  -8*32768/10    ;-0.8 

    .text 
_c_int00
		b start 
		nop
		nop
start:  
    	STM   #num,AR1
    	RPT   #1
    	MVPD  table,*AR1+ 		;传送2个数据至分子、分母单元    
    	STM   #den,AR1
    	LD    *AR1-,16,A      	;将分母移到累加器A(31-16)
    	MPYA  *AR1+            ;(num)*(A(32-16))->B,获取商的符号
    							;(在累加器B中)
        ABS   A    				;分母取绝对值 
    	STH   A,*AR1-   	    ;分母绝对值存回原处
    	LD    *AR1+,16,A    	;分子->A(32-16)
    	ABS   A       			;分子取绝对值
    	RPT   #14     			;15次减法循环,完成除法
    	SUBC  *AR1,A 
    	XC	  1,BLT				;如果B〈0(商是负数)则需要变号 
    	NEG	  A
    	STL   A,*(quot)			;保存商
        .END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?