Ðề tài: Thuat toan chia
View Single Post
Old 13-11-2007, 11:57 AM   #11
anchovy
Nhập môn đệ tử
 
Tham gia ngày: Nov 2007
Bài gửi: 3
:
Trích:
Nguyên văn bởi chumeodihia View Post
Đây là phép chia 8 bit cho 8 bit lấy về tham khảo nhe bạn 16 bit cũng tương tự như vậy thôi:

#include <p18F4431.inc>
org 0x000000
SO_CHIA EQU 0X81
SO_DU EQU 0X82
DIV EQU 0X83
SO_DICH EQU 0X84
LUU_TAM EQU 0X85
KQ_CHIA EQU 0X86
MAIN
MOVLW .15
MOVWF DIV
MOVLW .10
MOVWF SO_CHIA

CLRF KQ_CHIA
CLRF SO_DU
CLRF LUU_TAM
MOVLW .8
MOVWF SO_DICH

MOVF DIV,W
CPFSLT SO_CHIA ;NHAY NEU SO_CHIA < DIV
BRA KET_THUC
LOOP
BCF STATUS,C
RLCF DIV ;BIT7 OF DIV VAO CO C VA CO C VA BIT0 CUA DIV
RLCF LUU_TAM ;BIT7 OF DIV VAO BIT0 CUA LUU_TAM
MOVF LUU_TAM,W
CPFSEQ SO_CHIA
BRA NO_BANG
BRA BANG
NO_BANG
MOVF LUU_TAM,W
CPFSLT SO_CHIA ;NHAY NEU SO_CHIA < LUU_TAM (XEM SO DA DICH >SO CHIA CHUA)
BRA TTUC ;NO :THUONG SO=0 VA LUU VAO KQ_CHIA
BANG
MOVF SO_CHIA,W ;YES:THUONG SO=1 VA LUU VAO KQ_CHIA
SUBWF LUU_TAM,1 ;(LUU_TAM)-(SO_CHIA) LUU VAO LUU_TAM(SO_DU)
MOVLW 0X01
ADDWF DIV,1 ;DICH 1 VAO BIT0 CUA DIV-CHINH LA KQ_CHIA
TTUC
MOVFF LUU_TAM,SO_DU
MOVFF DIV,KQ_CHIA
DECFSZ SO_DICH,1
BRA LOOP
KET_THUC
END
co the giai thich lenh nay "MOVLW .15" giup minh dc ko minh moi hoc pic nen ko hieu
anchovy vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn