Unlike a linear, or
analogue circuit which contains signals that are constantly changing
from one value to another, such as amplitude or frequency, digital
circuits process signals that contain just two voltage levels or
states, labelled logic
"0"
and logic
"1".
Generally, a logic "1" represents a higher voltage, which
is referred to as a HIGH
and a logic "0" is referred to as a LOW.
These discrete voltage levels are commonly known as BInary
digiTS
and are normally referred to as BITS.
Because there are only two valid Boolean values for representing
either a logic "1" or a logic "0", makes the
system of using Binary
Numbers
ideal for use in digital or electronic circuits and systems. The
Binary Numbers system is a Base-2 system which follows the same rules
in mathematics as the common decimal system meaning instead of powers
of ten, for example 1, 10, 100, 1000 etc, binary numbers use powers
of two, doubling the value of each successive bit, 1, 2, 4, 8, 16, 32
etc.
The voltages used to represent a
digital circuit are called "logic levels" and ideally one
voltage level represents a HIGH and another represents a LOW. Digital
waveforms or signals consist of discrete voltage levels that are
changing back and forth between these HIGH and LOW levels or states.
But what makes a signal or voltage "Digital" and how can we
represent these voltage levels. Electronic circuits can be divided
into two main categories.
-
Analogue Circuits - Analogue or Linear circuits amplify or respond to continuously varying voltage levels over a period of time.
-
Digital Circuits - Digital circuits produce or respond too two distinct voltage levels representing either a Logic level "1" or a Logic level "0".
a. Convert Decimal to Binary
The Decimal
or "denary" counting system uses the Base
of 10
numbering system where each digit in a number takes on one of ten
possible values from 0 to 9, eg 21310
(Two Hundred and Thirteen). In a decimal system each digit has a
value ten times greater than its previous number and this decimal
numbering system uses a set of symbols, b, together with a base, q,
to determine the weight of each digit within a number. For example,
the six in sixty has a lower weighting than the six in six hundred
and in a binary numbering system we need some way of converting
decimal
to binary.
Then, any numbering system can be
summarised by the following relationship:
|
|
N
= bi
qi
|
||
|
|
where:
|
N is a real
positive number
b is the symbol q is the base value and integer (i) can be positive, negative or zero |
|
|
N = b2 q2 + b1 q1 + b0 q0 + b-1 q-1 ... etc. |
|||
In the decimal or
denary system, the columns have values of units, tens, hundreds etc
as we move from right to left and mathematically these values are
written as 100,
101,
102,
103
etc. Then the decimal numbering system has a base of 10 or modulo-10
(sometimes called MOD-10) with the position of each digit in the
decimal system indicating the magnitude or weight of the number. For
example, 20 (twenty) is the same as saying 2 x 101
and 400 (four hundred) is the same as saying 4 x 102.
Likewise, for fractional numbers the weight of the number is
negative, 10-1,
10-2,
10-3
etc.
The value of a
decimal number is equal to the sum of the digits multiplied by their
respective weights. For example: N = 616310
(Six Thousand One Hundred and Sixty Three) in a decimal
format is equal to:
(6×103)
+ (1×102)
+ (6×101)
+ (3×100)
= 6163
Unlike the decimal
numbering system which uses the base of 10, digital logic uses just
two values or states, a logic level "1" or a logic level
"0", so each "0" and "1" is considered
to be a single digit in a Base
of 2
or Binary
numbering system. In the binary numbering system, each digit has a
value twice that of the previous digit but can only have a value of
either "1" or "0" therefore, q = "2"
and the position of either a "0" or a "1"
indicates its weight.
For example:
|
Decimal
Digit Value
|
256
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
|
|
|||||||||
|
Binary Digit
Value
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
By adding together
all the decimal number values from right to left at the positions
that are represented by a "1" gives us: (256) +
(64) + (32) + (4) + (1) = 35710
or three hundred and fifty seven in decimal.
Then, the binary
array of digits 1011001012
is equivalent to 35710
in decimal or denary. As the decimal number is a weighted number,
converting from decimal to binary will also produce a weighted binary
number with the right-hand most bit being the Least
Significant Bit
or LSB,
and the left-hand most bit being the Most
Significant Bit
or MSB.
We can represent these as.
|
MSB
|
Binary
Digit
|
LSB
|
||||||
|
28
|
27
|
26
|
25
|
24
|
23
|
22
|
21
|
20
|
|
256
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
Repeated
Division-by-2 Method
Another method of converting decimal
into binary number equivalents is to write down the decimal number
and to continually divide by 2 (two) to give a result and a remainder
of either a "1" or a "0" until the final result
equals zero.
Example. Convert
the decimal number 29410
into its binary number equivalent.
|
Number
|
294
|
|
|
|
Dividing each
number by "2" gives a result plus a remainder. The
binary result is obtained by placing the remainders in order with
the least significant bit (LSB) being at the top and the most
significant bit (MSB) being at the bottom.
|
|
divide by 2
|
|||||
|
result
|
147
|
remainder
|
0 (LSB)
|
||
|
divide by 2
|
|||||
|
result
|
73
|
remainder
|
1
|
||
|
divide by 2
|
|||||
|
result
|
36
|
remainder
|
1
|
||
|
divide by 2
|
|||||
|
result
|
18
|
remainder
|
0
|
||
|
divide by 2
|
|||||
|
result
|
9
|
remainder
|
0
|
||
|
divide by 2
|
|||||
|
result
|
4
|
remainder
|
1
|
||
|
divide by 2
|
|||||
|
result
|
2
|
remainder
|
0
|
||
|
divide by 2
|
|||||
|
result
|
1
|
remainder
|
0
|
||
|
divide by 2
|
|||||
|
result
|
0
|
remainder
|
1 (MSB)
|
||
Then, the Decimal
number 29410
is equivalent to 1001001102
in the binary format reading it from right to left.
Then the main
characteristics of a Binary
Numbering System
is that each "digit" or "bit" has a value of
either "1" or "0" with each digit having a weight
or value double that of its previous bit starting from the lowest or
least significant bit (LSB) and this is called the "sum-of-weights"
method. So we can convert a decimal number to binary either by using
the sum-of-weights method or by using the repeated division-by-2
method.
b. Binary Number Names & Prefixes
Binary numbers can be added together
and subtracted just like decimal numbers with the result being
combined into one of several size ranges depending upon the number of
bits being used. The classifications of individual bits into larger
groups are generally referred to by the following more common names
of:
|
Number
of Binary Digits (bits)
|
Common
Name
|
|
|
|
|
1
|
Bit
|
|
4
|
Nibble
|
|
8
|
Byte
|
|
16
|
Word
|
|
32
|
Double
Word
|
|
64
|
Quad
Word
|
Also, when
converting from Decimal
to Binary
or even from Binary
to Decimal,
we need to be careful that we do not mix up the two sets of numbers.
For example, if we write the digits 10 on the page it could mean the
number "ten" if we assume it to be a decimal number, or it
could equally be a "1" and a "0" together in
binary, which is equal to the number two in decimal from above. One
way to overcome this problem and to identify whether the digits or
numbers being used are decimal or binary is to write a small number
called a subscript
after the last digit to show the base of the number system being
used. If we were using a binary number we would add the subscript 2
so the number would be written as 102,
and if it were a decimal number we would add the subscript 10 so the
number would be written as 1010.
Today, as micro-controller or
microprocessor systems become increasingly larger, the individual
binary digits (bits) are now grouped together into 8´s to form a
single BYTE with most computer hardware such as hard drives and
memory modules commonly indicate their size in Megabytes or even
Gigabytes.
|
Number
of Bytes
|
Common
Name
|
|
1,024 (210)
|
kilobyte
(kb)
|
|
1,048,576 (220)
|
Megabyte
(Mb)
|
|
1,073,741,824 (230)
|
Gigabyte
(Gb)
|
|
a
very long number! (240)
|
Terabyte
(Tb)
|
c. Decimal to Binary Summary
-
A "BIT" is the abbreviated term derived from BInary digiT
-
A Binary system has only two states, Logic "0" and Logic "1"
-
A Decimal system uses 10 different digits, 0 to 9
-
A Binary number is a weighted number who's weighted value increases from right to left
-
The weight of a binary digit doubles from right to left
-
A decimal number can be converted to a binary number by using the sum-of-weights method or the repeated division-by-2 method
-
When we convert numbers from decimal to binary, subscripts are used to avoid errors
No comments:
Post a Comment