00001 #include "p18cxxx.inc" 00002 udata_acs ; Adatterület lefoglalása 00003 i res 1 00004 j res 1 00005 k res 1 00006 n res 1 00007 RST CODE 00008 goto start 00009 PGM CODE ; Itt kezdődik a program 00010 00011 ;=== n=j+(i<<3)-k; 00012 ;--- i<<3 kiszámítása 00013 start: 00014 movf i,W ; W = i 00015 bcf STATUS,0 ; C = 0 00016 rlcf WREG ; W = i<<1 00017 bcf STATUS,0 ; C =0 00018 rlcf WREG ; W = i<<2 00019 bcf STATUS,0 ; C = 0 00020 rlcf WREG ; W = i<<3 00021 movwf n ; n = W = i<<3 00022 ;--- j hozzáadása 00023 movf j,W ; W = j 00024 addwf n ; n = n+W = j+i<<3 00025 ;--- k kivonása 00026 movf k,W ; W = k 00027 subwf n ; n = n-k = j+(i<<3)-k 00028 goto $ 00029 END