微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PIC单片机65535*65535子程序

PIC单片机65535*65535子程序

时间:11-29 来源:互联网 点击:
INCLUDE"P16F877.INC"
ORG  0000HGOTO A1ORG  002BHA1   MOVLW 00HMOVWF 40H;数据处理寄存器高位(乘积高8位)MOVLW 00HMOVWF 41H;数据处理寄存器低位(乘积高中8位)MOVLW 0FFHMOVWF 42H;被乘数高位(乘积低中8位)MOVLW 0FFH MOVWF 43H;被乘数低位(乘积低8位)MOVLW 0FFHMOVWF 44H;乘数高位MOVLW 0FFHMOVWF 45H;乘数低位MOVLW D16MOVWF 4AH;循环次数--8位二进制数相乘8次4位则4次A2  CLRF 4BH;清标志BTFSS 43H,0;判断被乘数第0位是否为0是则不用相加 GOTO A3MOVFW 45H;不为0则相加ADDWF 41H,1;乘数低位与处理后数据低位相加数据存回数据处理低位寄存器MOVFW 44H;BTFSC STATUS,C;判断是否溢出INCF 44H,0;是则加1BTFSC STATUS,Z;判断加1后是否溢出BSF  4BH,1;是则置为标志ADDWF 40H,1;乘数低位与处理后数据高位相加上面相加可能溢出所以用ADDC数据存回数据处理高位寄存器BTFSC 4BH,1;判断溢出标志BSF  STATUS,C;溢出则置位CA3   RRF  40H,1;先右移高位相加可能溢出RRF循环带C右移RRF  41H,1;再右移低位把高位的数移入低位RRF  42H,1;将处理后的数移到被乘数高位RRF  43H,1;将处理后的数移到被乘数低位DECFSZ 4AH,1;是否完成GOTO A2NOPNOPNOPGOTO  $END

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top