Файл: Digital design with CPLD applications and VHDL (R. Dueck, 2000).pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 13.06.2025
Просмотров: 8083
Скачиваний: 6
6.5 • Numeric and Alphanumeric Codes |
237 |
Another way to generate a Gray code sequence is to recognize the inherent symmetry in the code. For example, a 2-bit Gray code sequence is given by:
00
01
11
10
To generate a 3-bit Gray code, write the 2-bit sequence, then write it again in reverse order.
00
01
11
10
10
11
01
00
Add an MSB of 0 to the first four codes and an MSB of 1 to the last four codes. The sequence followed by the last two bits of all codes is symmetrical about the center of the sequence.
000
001
011
010
110
111
101
100
We can apply a similar process to generate a 4-bit Gray code. Write the 3-bit sequence, then again in reverse order. Add an MSB of 0 to the first half of the table and an MSB of 1 to the second half. This procedure yields the code in Table 6.4.
ASCII Code
K E Y T E R M S
Alphanumeric code A code used to represent letters of the alphabet and numerical characters.
ASCII American Standard Code for Information Interchange. A 7-bit code for
representing alphanumeric and control characters.
Case shift Changing letters from capitals (uppercase) to small letters (lowercase) or vice versa.
Digital systems and computers could operate perfectly well using only binary numbers. However, if there is any need for a human operator to understand the input and output data of a digital system, it is necessary to have a system of communication that is understandable to both a human operator and the digital circuit.
A code that represents letters (alphabetic characters) and numbers (numeric characters) as binary numbers is called an alphanumeric code. The most commonly used alphanumeric code is ASCII (“askey”), which stands for American Standard Code for Information Interchange. ASCII code represents letters, numbers, and other “typewriter characters” in 7 bits. In addition, ASCII has a repertoire of “control characters,” codes that
238 |
C H A P T E R 6 • Digital Arithmetic and Arithmetic Circuits |
are used to send control instructions to and from devices such as video display terminals, printers, and modems.
Table 6.5 shows the ASCII code in both binary and hexadecimal forms. The code for any character consists of the bits in the column heading, then those in the row heading. For example, the ASCII code for “A” is 10000012 or 41H. The code for “a” is 11000012 or 61H. The codes for capital (uppercase) and lower case letters differ only by the second most significant bit, for all letters. Thus, we can make an alphabetic case shift, like using the Shift key on a typewriter or computer keyboard, by switching just one bit.
Numeric characters are listed in column 3, with the least significant digit of the ASCII code being the same as the represented number value. For example, the numeric character “0” is equivalent to 30H in ASCII. The character “9” is represented as 39H.
The codes in columns 0 and 1 are control characters. They cannot be displayed on any kind of output device, such as a printer or video monitor, although they may be used to control the device. For instance, if the codes 0AH (Line Feed) and ODH (Carriage Return)
Table 6.5 |
ASCII Code |
||||||||
MSBs |
|||||||||
000 |
001 |
010 |
011 |
100 |
101 |
110 |
111 |
||
(0) |
(1) |
(2) |
(3) |
(4) |
(5) |
(6) |
(7) |
||
LSBs |
|||||||||
0000 |
(0) |
NUL |
DLE |
SP |
0 |
@ |
P |
’ |
p |
0001 |
(1) |
SOH |
DC1 |
! |
1 |
A |
Q |
a |
q |
0010 |
(2) |
STX |
DC2 |
″ |
2 |
B |
R |
b |
r |
0011 |
(3) |
ETX |
DC3 |
# |
3 |
C |
S |
c |
s |
0100 |
(4) |
EOT |
DC4 |
$ |
4 |
D |
T |
d |
t |
0101 |
(5) |
ENQ |
NAK |
% |
5 |
E |
U |
e |
u |
0110 |
(6) |
ACK |
SYN |
& |
6 |
F |
V |
f |
v |
0111 |
(7) |
BEL |
ETB |
′ |
7 |
G |
W |
g |
w |
1000 |
(8) |
BS |
CAN |
( |
8 |
H |
X |
h |
x |
1001 |
(9) |
HT |
EM |
) |
9 |
I |
Y |
i |
y |
1010 |
(A) |
LF |
SUB |
* |
: |
J |
Z |
j |
z |
1011 |
(B) |
VT |
ESC |
; |
K |
[ |
k |
{ |
|
1100 |
(C) |
FF |
FS |
, |
L |
\ |
l |
| |
|
1101 |
(D) |
CR |
GS |
- |
= |
M |
] |
m |
} |
1110 |
(E) |
SO |
RS |
. |
N |
^ |
n |
||
1111 |
(F) |
SI |
US |
/ |
? |
O |
— |
o |
DEL |
Control Characters: |
|||||||||
NUL–NUll |
DLE–Data Link Escape |
||||||||
SOH–Start of Header |
DC1–Device Control 1 |
||||||||
STX–Start Text |
DC2–Device Control 2 |
||||||||
ETX–End Text |
DC3–Device Control 3 |
||||||||
EOT–End of Transmission |
DC4–Device Control 4 |
||||||||
ENQ–Enquiry |
NAK–No Acknowledgment |
||||||||
ACK–Acknowledge |
SYN–Synchronous Idle |
||||||||
BEL–Bell |
ETB–End of Transmission Block |
||||||||
BS–Backspace |
CAN–Cancel |
||||||||
HT–Horizontal Tabulation |
EM–End of Medium |
||||||||
LF–Line Feed |
SUB–Substitute |
||||||||
VT–Vertical Tabulation |
ESC–Escape |
||||||||
FF–Form Feed |
FS–Form Separator |
||||||||
CR–Carriage Return |
GS–Group Separator |
||||||||
SO–Shift Out |
RS–Record Separator |
||||||||
SI–Shift In |
US–Unit Separator |
||||||||
SP–Space |
DEL–Delete |
||||||||