新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 芯海單片機(jī)乘法運(yùn)算

芯海單片機(jī)乘法運(yùn)算

作者: 時(shí)間:2016-11-30 來源:網(wǎng)絡(luò) 收藏
;============================================
; filename: 乘法運(yùn)算.asm
; chip : CSU1182B
; author :
; date : 2013-02-21
;程序下載:http://www.51hei.com/f/xhdjpj.rar
;============================================
include CSU1182B.inc
;============================================
; program start
;============================================
org 000h
GOTO A1
ORG 15H

A1:
MOVLW 00H ;
MOVWF 0B0H ;高位數(shù)據(jù)處理寄存器(乘積高8位)
MOVLW 00H ;
MOVWF 0B1H ;低位數(shù)據(jù)處理寄存器(乘積中高8位)

MOVLW 22H ;
MOVWF 0B2H ;被乘數(shù)高位(乘積低高8位)
MOVLW 0B8H ;
MOVWF 0B3H ;被乘數(shù)低位(乘積低8位)

MOVLW 27H ;
MOVWF 0B4H ;乘數(shù)高8位
MOVLW 0FH ;
MOVWF 0B5H ;乘數(shù)低8位

MOVLW 16 ;
MOVWF 0BFH ;乘數(shù)位數(shù)

A2:
BCF STATUS,C ;
BTFSS 0B3H,0 ;判斷被乘數(shù)最低位是否為1
GOTO A3 ;
MOVFW 0B5H ;是則用數(shù)據(jù)處理寄存器加上乘數(shù)
ADDWF 0B1H,1 ;
MOVFW 0B4H ;
ADDWFC 0B0H,1 ;
A3:
RRF 0B0H,1 ;帶進(jìn)位右移
RRF 0B1H,1 ;
RRF 0B2H,1 ;
RRF 0B3H,1 ;
DECFSZ 0BFH,1 ;判斷是否完成運(yùn)算
GOTO A2 ;

GOTO $ ;

end
;============================================


評(píng)論


技術(shù)專區(qū)

關(guān)閉