org 0x10
segment ; Таблица преобразования DEC -› семисегментный код.
CLRF PCLATH
ADDWF PCL, F
dt 07E, 00C, 0B6, 09E, 0CC, 0DA, 0FA, 00E, 0FE, 0DE
;-----------------------------------------------------------------------
tab_dec ; Таблица преобразования HEX -› DEC
CLRF PCLATH
ADDWF PCL, F
base dt 0 ; База для вычисления смещения в таблице.
dt c_00-base, c_01-base, c_02-base, c_03-base
dt c_04-base, c_05-base, c_06-base, c_07-base
dt c_08-base, c_09-base, c_10-base, c_11-base
dt c_12-base, c_13-base, c_14-base, c_15-base, c_16-base
; Таблица десятичных значений двоичных разрядов
c_16 dt 6, 3, 5, 5, 6 ; 2^15 = 63556.
c_15 dt 3, 2, 7, 6, 8 ; 2^15 = 32768.
c_14 dt 1, 6, 3, 8, 4 ; 2^14 = 16384.
c_13 dt 0, 8, 1, 9, 2 ; 2^13 = 8192.
c_12 dt 0, 4, 0, 9, 6 ; 2^12 = 4096.
c_11 dt 0, 2, 0, 4, 8 ; 2^11 = 2048.
c_10 dt 0, 1, 0, 2, 4 ; 2^10 = 1024.
c_09 dt 0, 0, 5, 1, 2 ; 2^9 = 512.
c_08 dt 0, 0, 2, 5, 6 ; 2^8 = 256.
c_07 dt 0, 0, 1, 2, 8 ; 2^7 = 128.
c_06 dt 0, 0, 0, 6, 4 ; 2^6 = 64.
c_05 dt 0, 0, 0, 3, 2 ; 2^5 = 32.
c_04 dt 0, 0, 0, 1, 6 ; 2^4 = 16.
c_03 dt 0, 0, 0, 0, 8 ; 2^3 = 8.
c_02 dt 0, 0, 0, 0, 4 ; 2^2 = 4.
c_01 dt 0, 0, 0, 0, 2 ; 2^1 = 2.
c_00 dt 0, 0, 0, 0, 1 ; 2^0 = 1.
; ************************************************** ******** |