; Вход R16 ; Выход R16 младший полубайт - выходит на печать последним ; R17 старший полубайт - выходит на печать первым. BCD2ASCII: MOV R17,R16 ANDI R16,0x0F subi R16,-0x30 ANDI R17,0xF0 SWAP R17 subi R17,-0x30 RET ; r16 = 0x23 r16 & 0x0f == 0x03 r16 + 0x30 == 0x33 == '3' r17 & 0xf0 == 0x20 r17 swap == 0x02 r17 + 0x30 == 0x32 == '2'