0% found this document useful (0 votes)
27 views

Lecture 4

This document discusses different types of binary codes used in digital systems. It begins with an introduction to binary codes and their objectives. It then covers various coding schemes including character coding using ASCII, EBCDIC, and Unicode. Error detection codes like parity bits are also discussed. Gray code and its use in error detection are explained. Decimal coding using BCD is described along with packed and unpacked BCD storage formats. Additional notes provide the relevant textbook section.

Uploaded by

Mohd Al Asadi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views

Lecture 4

This document discusses different types of binary codes used in digital systems. It begins with an introduction to binary codes and their objectives. It then covers various coding schemes including character coding using ASCII, EBCDIC, and Unicode. Error detection codes like parity bits are also discussed. Gray code and its use in error detection are explained. Decimal coding using BCD is described along with packed and unpacked BCD storage formats. Additional notes provide the relevant textbook section.

Uploaded by

Mohd Al Asadi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 22

Digital Logic

Lecture 4

Binary Codes

The Hashemite University


Computer Engineering Department
Outline
 Introduction.
 Character coding.
 Error detection codes.
 Gray code.
 Decimal coding.

The Hashemite University 2


Introduction
 Binary code is a sequence of 1 and 0 to
represent specific values or quantities.
 Simply it is a substitution or a simplification
technique.
 Binary code objectives:
 Security assurance: encryption and decryption
techniques used to secure communication and
data storage.
 Civil applications: such as text coding in
computers, and codes used to reduce digital
communication errors opportunities.
 Mainly we are interested in civil applications.
The Hashemite University 3
General Rules of Binary Codes
 For n-bit binary code, the number of values that
can be codes (or simply the max number of
codes) = 2n.
 The min number of bits required to code m
values = ciel[log2m].
 The max number of bit used to code m values
can be >= min limit computed using the above
equation (i.e. there is no restrictions on the
maximum limit of the used bits).
 Each value must be assigned a unique code and
vice versa to enable correct encoding and
decoding.
The Hashemite University 4
Binary Codes Types
 Character coding.
 Error detection codes.
 Gray code.
 Decimal coding.

The Hashemite University 5


Character Coding -- ASCII
 ASCII stands for “American Standard Code for
Information Interchange”.
 It is a 7-bit code. So, each character is assigned a 7-
bit binary value. This value is used by the digital
systems (e.g. Computers) to correctly store and
manipulate text data.
 Originally used on non IBM systems.
 Basis of most currently used digital systems.
 Need to add an additional bit to make the code 8-bit
to be stored in a byte. Two options are provided:
 Simply add 0 in the MSB.
 Use it in even or odd-parity error detection coding as will be
seen later.

The Hashemite University 6


ASCII Table

The Hashemite University 7


Character Coding -- EBCDIC
 EBCDIC stands for “Extended Binary
Coded Decimal Interchange Code”.
 8-bit code.
 Originally used in IBM mainframes.
 Provide a larger set of codes than
ASCII.
 Less common than ASCII.

The Hashemite University 8


Character Coding -- Unicode
 Designated as the universal code for
text coding.
 Comes to provide a large set of codes,
i.e. solve the limitations found in ASCII
and EBCDIC.
 16-bit code.
 Used in the Internet.

The Hashemite University 9


Error Detection Codes I
 Data communication requires special codes and
algorithms to determine whether the received data is
the same as the one transmitted, i.e. error free.
 The simplest error detection code is based on adding
a parity bit for ASCII code.
 Parity means that two things are equal (identical).
 Simply add a 1 or 0 to the MSB in ASCII (parity) to
make the number of ones in that byte either odd
(odd parity) or even (even parity).
 Even parity is most common.
 E.g.: for 0111100 add 0 to MSB to obtain an even
parity and 1 to obtain an odd parity.

The Hashemite University 10


Error Detection Codes II
 The sender and the receiver know in advance
the used parity type (odd or even).
 The sender add the parity bit to each byte
before transmission.
 The receiver checks the parity before
decoding the data. Assume that even parity is
used, if the number of ones in a byte found
to be odd, this means that there is an error in
this byte.
The Hashemite University 11
Error Detection Codes III
 Disadvantages:
 Both even and odd parity can detect odd number
of error bits only. So, if two bits are in error for
example, the parity remains correct.
 Parity cannot determine the locations of the bits in
error.
 Cannot determine the number of bits in error.
 What to do when detecting an error in the
received message?
 Ask the sender to retransmit the message.
 Or use an error correction algorithm to recover
the original message.
The Hashemite University 12
Gray Code
 Also, known as “The Reflected Binary Code”.
 The main idea of Gray code is that any two
subsequent codes differ in one bit only.
 Useful for error detection and correction in
digital communication systems.
 Manly used in applications that produce
values in an increasing (or decreasing) order,
i.e. similar to the counter concept.
 Gray code can be 1-bit, 2-bit, 3-bit, etc.,
based on the number of values needed to be
coded.
The Hashemite University 13
3-bit Gray Code
Decimal Binary Gray Code
0 000 000
1 001 001
2 010 011
3 011 010
4 100 110
5 101 111
6 110 101
7 111 100

The Hashemite University 14


Gray Code Conversion I
 The first method includes conversion in one
direction only (from binary value to Gray).
 Start from the LSB, if the next bit (in the higher
significance location) is 1 invert the current bit. If
it is 0 then do not change the current bit.
 E.g. convert 11011 to Gray code.

11011

1 0 1 1 0
Remains the same Inverted (10)
Answer = 10110 since the bit after since the bit
The HashemiteitUniversity
is 0 after it is 1 15
Gray Code Conversion II
 The second method includes conversion in
two directions and it is based on the usage of
the XOR logical function.
 Convert one to the other as follows:
 Copy the most significant bit

 For each smaller i do G[i] = XOR(B[i+1],

B[i]) (to convert binary to Gray)


Or
 B[i] = XOR(B[i+1], G[i]) (to convert Gray

to binary)

The Hashemite University 16


Gray code binary conversion
 Ex convert 1101101 in gray code to binary
Ans.. 1001001
 Ex convert 1001001 in binary to gray code
Ans.. 1101101
Decimal Coding I
 BCD is the main example of decimal coding.
 BCD Code (Binary Coded Decimal): A code used to
represent each decimal digit of a number by a 4-Bit
Binary Value.
 Valid Digits for 0-9 are (0000 to 1001) the binary
codes 1010 to 1111 are invalid.
 So, the BCD code of each digit is the binary
conversion of that decimal digit.
 Called an 8421 Code due to the decimal weight of
each bit position.
 BCD comes to provide:
 A solution for the difficulty of the conversion between binary
and decimal.
 Easier to be understood by humans.
The Hashemite University 18
Decimal Coding II
Decimal BCD
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001

The Hashemite University 19


Decimal Coding III
 For a compound number of decimal (multi-
digit number) the BCD of that number is
simply the substitution of the BCD code of
each digit.
 E.g. 12310  000100100011 (BCD)
 So, n digit decimal number needs 4n binary
bits to be represented in BCD.
 Pay attention to number justification when it
is in BCD. Also, note that numbers in BCD are
decimal not binary numbers.
The Hashemite University 20
Decimal Coding IV
 Note that a BCD digit needs 4 bit to be stored.
 The smallest storage unit in computer is byte
which is larger than what needed by 1 BCD
digit.
 There are two types of BCD code depending on
how to store BDC digits in a byte.
 BCD code types:
 Packed BCD: a byte can store two BCD digits. So, for
example, the number 867810 needs 2 bytes.
 Unpacked BCD: a byte can store one BCD digit in the
lower nibble while the higher nibble contains zeros.
So, for example, the number 867810 needs 4 bytes.
The Hashemite University 21
Additional Notes
 This lecture covers the following
material from the textbook:
 Chapter 1: Section 1.7

The Hashemite University 22

You might also like