Podstawy techniki
mikroprocesorowej
Kod ASCII
Modyfikacja:2 grudnia 2007
KOD ASCII
W kodzie znakowym ASCII są zawarte:
Znaki liter alfabetu,
Znaki cyfr dziesiętnych,
Znaki graficzne stosowane w piśmie (np. kropka,
przecinek, nawiasy),
Znaki sterujące formatem (np. spacja, tabulator,
nowa linia)
Znaki funkcyjne (np. początek nagłówka, koniec
tekstu).
Tablica kodowe
0
b6 b5 b4 b3 b2 b1 b0
Zbiór podstawowy zawierający alfabet łaciński
Zbiór dodatkowy zawierający inne znaki alfabetu łacińskiego np., ą, ę
Oraz inne alfabety np. arabski, cyrulica, kodowane są w postaci:
1
b6 b5 b4 b3 b2 b1 b0
Przejście do odpowiedniej tablicy kodowej następuje przez
sekwencję rozszerzającą (escape sequence) zaczynającą się
znakiem ESC (0x1B)
Algorytm zamiany kodu szesnastkowego na kod
ASCII
temp<0x3A ?
temp temp+0x30
Początek procedury
Zakończenie procedury
cyfra
litera
Tak
Nie
temp=temp+7
Algorytm zamiany kodu szesnastkowego na kod
ASCII
temp<10 ?
temp temp AND 0x0F
Początek procedury
Zakończenie procedury
litera
cyfra
Tak
Nie
temp=temp+0x30
temp=temp+0x37
Algorytm zamiany kodu szesnastkowego na kod
ASCII
bin2hex: mov R17,R16;
andi R17,0x0F;
cpi R17,10
brsh B2H_1
ori R17,0b00110000 ;=0x30
rjmp B2H_2
B2H_1: subi R17,-55; (55=0x37)
B2H_2: mov R18,R16
andi R18,0xF0
swap R18
cpi R18,10
brsh B2H_3
ori R18,0b00110000
ret
B2H_3: subi R18,-55
ret