00001 #include "p18cxxx.inc" 00002 ;--- 4 bites egész számok szorzása ----------------- 00003 udata_acs 00004 a res 1 ; ebben lesz a szorzat 00005 i res 1 ; ez a szorzandó 00006 j res 1 ; ez a szorzó 00007 n res 1 ; ciklusszámláló 00008 RST CODE 00009 goto start 00010 ;--- a = i * j kiszámítása 00011 PGM CODE 00012 start: movlw 9 00013 movwf i ; i=9 00014 movlw 5 00015 movwf j ; j=5 00016 clrf a 00017 movlw 4 00018 movwf n ; n=4 00019 ciklus: bcf STATUS,C 00020 rrcf j 00021 bnc next ; j<4-n> vizsgálata 00022 movf i,W ; ha a bit=1, ) 00023 addwf a ; akkor a=a + i*2^(4-n 00024 next: bcf STATUS,C ; i léptetése 00025 rlcf i 00026 decfsz n ; n = n-1 00027 bra ciklus ; folytatás, amíg n>0 00028 nop 00029 goto $-2 00030 END