Assembler
V nasem pripade konkretne kod pro procesory Microchip rady PIC16x, jde o procesory typu RISC s 35ti zakladnimi instrukcemi.
Seznam vsech instrukci a jejich popis je zde nebo mozno vyuzit strycka Google.
Zapis instrukce jazyka ASSEMBLER se sklada ze dvou casti a to z vlastniho kodoveho slova instrukce a tzv. operandu.
Nasledujici priklad instrukce provede zapis dat z registru W (pracovni registr) do registru se symbolickym názvem MojeBunka.
MOVWF MojeBunka
a opacne:
MOVF MojeBunka, 0
kde prave 0 oznacuje umisteni do W registru.
Potrebne konstanty pro vylusteni:
Const_D EQU b'00001100'
Const_M EQU b'00001000'
Const_R_H EQU b'00000111'
Const_R_L EQU b'11011111'
Samotny kod pro ziskani souradnic:
MOVLW Const_D
MOVWF Mem_W
RLF Mem_W,1
RLF Mem_W,0
ADDLW 0x01
MOVWF Gps_N_Deg
MOVLW Const_R_L
XORLW 0xFF
MOVWF Mem_W
SWAPF Mem_W,1
XORWF Mem_W,0
MOVWF Gps_N_Dec
MOVLW Const_M
MOVWF Mem_W
RLF Mem_W,1
SWAPF Mem_W,0
MOVWF Gps_N_Min_H
MOVLW Const_R_L
SUBLW 0x58
BTFSC STATUS,C
ADDLW 0xC0
MOVWF Gps_N_Min_L
MOVF Gps_N_Deg,0
XORWF Gps_N_Dec,0
MOVWF Mem_W
BTFSC Mem_W,1
BCF Mem_W,1
MOVF Mem_W,0
MOVWF Gps_E_Deg
MOVLW Const_M
MOVWF Mem_W
RLF Mem_W,0
MOVWF Gps_E_Dec
MOVLW Const_R_H
MOVWF Mem_W
SWAPF Mem_W,1
RRF Mem_W,1
BTFSS STATUS,C
CLRW
MOVWF Gps_E_Min_H
MOVLW Const_R_L
MOVWF Mem_W
BCF Mem_W,4
MOVF Mem_W,0
MOVWF Gps_E_Min_L
upozorneni:
Minuty v souradnicich jsou 16ti bitove.
Na vychozich souradnicich kes nehledejte, naleznete zde jen obchod s elektro soucastkami :)
Pro prvni tri nalezce jsou v kesi urcene mikroprocesory PIC :-)