ПП перекодировки данных .

Автор: Super User Просмотров: 1004

 

Данным способом можно перекодировать значение всех чисел в пределах 0-255.  Необходимо учитывать, что числа 0-127 будут в одном банке, а числа  128-256  в предыдущем,   т.е.     (-128<=F<=127).


;-----------------------------------
; При выполнении подпрограммы к адресу 0500h
; добавляется значение содержимого W , 
; результат в W (чтение регистра 0500+W)
;-----------------------------------
Kod_w       lfsr        FSR0,0500h ; Указатель на 0500h
            movf          PLUSW0,0 ; Значение в W
            return                 ; Возврат из ПП


Запись кода (пример).

;-----------------------------------
; Кодировщик 
;-----------------------------------
Kod_c       lfsr        FSR0,0500h ; записывать с адреса 0500h
            movlw               .9 ; Символ "0".
            movwf         POSTINC0 ; Запись, +1
            movlw               .8 ; Символ "1".
            movwf         POSTINC0 ; Запись, +1
            movlw               .3 ; Символ "2".
            movwf         POSTINC0 ; Запись, +1
            movlw               .7 ; Символ "3".
            movwf         POSTINC0 ; Запись, +1
            movlw               .1 ; Символ "4".
            movwf         POSTINC0 ; Запись, +1
            movlw               .2 ; Символ "5".
            movwf         POSTINC0 ; Запись, +1
            movlw                0 ; Символ "6".
            movwf         POSTINC0 ; Запись, +1
            movlw               .4 ; Символ "7".
            movwf         POSTINC0 ; Запись, +1
            movlw               .5 ; Символ "8".
            movwf         POSTINC0 ; Запись, +1
            movlw               .6 ; Символ "9".
            movwf         POSTINC0 ; Запись, +1
            return                 ; Возврат из ПП.
           

Все права принадлежат ChipMK.ru. При копировании материала ссылка обязательна. 2011-2017 © ChipMK.ru

ChipMk.ru Яндекс.Метрика
PRCY.ru