Search

Google Website Translator Gadget

Tuesday, February 15, 2011

Digital Electronics


Digital electronics

Digital electronics envolves initially for performing numerical computations quickly and accurately. The inventions of transistor in 1947 paved the way for fabrication of logic circuits and then digital ICs which are efficient and faster than the analog circuita. In almost of the digital circuits diodes and transistors are used as switches to change from one voltage level to another. Since a switch may be oped or closed, the output states of digital circuits are designed as OFF and ON states. These two states correspond to the 0 and 1 states in positive logic systems. Today digital circuits are used in diverse applications such as CD  player , stereos, TVs, Telephones....
I
Numerical Presentation

The quantities that are to be measured, monitored, recorded, processed and controlled are analog and digital, depending on the type of system used. It is important when dealing with various quantities that we be able to represent their values efficiently and accurately. There are basically two ways of representing the numerical value of quantities: analog and digital.

Advantages

  • Easier to design. Exact values of voltage or current are not important, only the range (HIGH or LOW) in which they fall.
  • Information storage is easy.
  • Accuracy and precision are greater.
  • Operations can be programmed. Analog systems can also be programmed, but the available operations variety and complexity is severely limited.
  • Digital circuits are less affected by noise, as long as the noise is not large enough to prevent us from distinguishing HIGH from LOW (we discuss this in detail in an advanced digital tutorial section).
  • More digital circuitry can be fabricated on IC chips.
Limitations of Digital Techniques
  • Most physical quantities in real world are analog in nature, and these quantities are often the inputs and outputs that are being monitored, operated on, and controlled by a system. Thus conversion to digital format and re-conversion to analog format is needed.
Many number systems are in use in digital technology. The most common are the decimal, binary, octal, and hexadecimal systems. The decimal system is clearly the most familiar to us because it is a tool that we use every day. Examining some of its characteristics will help us to better understand the other systems. In the next few pages we shall introduce four numerical representation systems that are used in the digital system. There are other systems, which we will look at briefly.
  • Decimal
  • Binary
  • Octal
  • Hexadecimal
   
space.gif
  ../images/main/bulllet_4dots_orange.gifDecimal System
The decimal system is composed of 10 numerals or symbols. These 10 symbols are 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Using these symbols as digits of a number, we can express any quantity. The decimal system is also called the base-10 system because it has 10 digits.
   
space.gif
103
102
101
100

10-1
10-2
10-3
=1000
=100
=10
=1
.
=0.1
=0.01
=0.001
Most Significant Digit



Decimal point


Least Significant Digit
   
space.gif
Even though the decimal system has only 10 symbols, any number of any magnitude can be expressed by using our system of positional weighting.
   
space.gif
  ../images/main/bullet_star_pink.gifDecimal Examples    
space.gif
  • 3.1410
  • 5210
  • 102410
  • 6400010
   
space.gif
  ../images/main/bulllet_4dots_orange.gifBinary System
In the binary system, there are only two symbols or possible digit values, 0 and 1. This base-2 system can be used to represent any quantity that can be represented in decimal or other base system.
   
space.gif
23
22
21
20

2-1
2-2
2-3
=8
=4
=2
=1
.
=0.5
=0.25
=0.125
Most Significant Digit



Binary point


Least Significant Digit
   
space.gif
  ../images/main/bullet_star_pink.gifBinary Counting
The Binary counting sequence is shown in the table:
   
space.gif
23
22
21
20
Decimal
0
0
0
0
0
0
0
0
1
1
0
0
1
0
2
0
0
1
1
3
0
1
0
0
4
0
1
0
1
5
0
1
1
0
6
0
1
1
1
7
1
0
0
0
8
1
0
0
1
9
1
0
1
0
10
1
0
1
1
11
1
1
0
0
12
1
1
0
1
13
1
1
1
0
14
1
1
1
1
15
   
space.gif
   
space.gif
  ../images/main/bullet_star_pink.gifRepresenting Binary Quantities
In digital systems the information that is being processed is usually presented in binary form. Binary quantities can be represented by any device that has only two operating states or possible conditions. E.g.. a switch is only open or closed. We arbitrarily (as we define them) let an open switch represent binary 0 and a closed switch represent binary 1. Thus we can represent any binary number by using series of switches.
   
space.gif
  ../images/main/bullet_star_pink.gifTypical Voltage Assignment
Binary 1:Any voltage between 2V to 5V
Binary 0:Any voltage between 0V to 0.8V
Not used:Voltage between 0.8V to 2V in 5 Volt CMOS and TTL Logic, this may cause error in a digital circuit. Today's digital circuits works at 1.8 volts, so this statement may not hold true for all logic circuits.
   
space.gif
../images/digital/digital_voltage.gif   
space.gif
We can see another significant difference between digital and analog systems. In digital systems, the exact voltage value is not important; eg, a voltage of 3.6V means the same as a voltage of 4.3V. In analog systems, the exact voltage value is important.
   
space.gif
The binary number system is the most important one in digital systems, but several others are also important. The decimal system is important because it is universally used to represent quantities outside a digital system. This means that there will be situations where decimal values have to be converted to binary values before they are entered into the digital system.
   
space.gif
In additional to binary and decimal, two other number systems find wide-spread applications in digital systems. The octal (base-8) and hexadecimal (base-16) number systems are both used for the same purpose- to provide an efficient means for representing large binary system.
   
space.gif
  ../images/main/bulllet_4dots_orange.gifOctal System
The octal number system has a base of eight, meaning that it has eight possible digits: 0,1,2,3,4,5,6,7.
   
space.gif
83
82
81
80

8-1
8-2
8-3
=512
=64
=8
=1
.
=1/8
=1/64
=1/512
Most Significant Digit



Octal point


Least Significant Digit
   
space.gif
  ../images/main/bullet_star_pink.gifOctal to Decimal Conversion   
space.gif
  • 2378 = 2 x (82) + 3 x (81) + 7 x (80) = 15910
  • 24.68 = 2 x (81) + 4 x (80) + 6 x (8-1) = 20.7510
  • 11.18 = 1 x (81) + 1 x (80) + 1 x (8-1) = 9.12510
  • 12.38 = 1 x (81) + 2 x (80) + 3 x (8-1) = 10.37510
   
space.gif
  ../images/main/bulllet_4dots_orange.gifHexadecimal System
The hexadecimal system uses base 16. Thus, it has 16 possible digit symbols. It uses the digits 0 through 9 plus the letters A, B, C, D, E, and F as the 16 digit symbols.
   
space.gif
163
162
161
160

16-1
16-2
16-3
=4096
=256
=16
=1
.
=1/16
=1/256
=1/4096
Most Significant Digit



Hexa Decimal point


Least Significant Digit
   
space.gif
  ../images/main/bullet_star_pink.gifHexadecimal to Decimal Conversion   
space.gif
  • 24.616 = 2 x (161) + 4 x (160) + 6 x (16-1) = 36.37510
  • 11.116 = 1 x (161) + 1 x (160) + 1 x (16-1) = 17.062510
  • 12.316 = 1 x (161) + 2 x (160) + 3 x (16-1) = 18.187510

Symbolic Logic


Boolean algebra derives its name from the mathematician George Boole. Symbolic Logic uses values, variables and operations :
   
space.gif
  • True is represented by the value 1.
  • False is represented by the value 0.
Variables are represented by letters and can have one of two values, either 0 or 1. Operations are functions of one or more variables.
  • AND is represented by X.Y
  • OR is represented by X + Y
  • NOT is represented by X' . Throughout this tutorial the X' form will be used and sometime !X will be used.
These basic operations can be combined to give expressions.
   
space.gif
Example :
   
space.gif
  • X
  • X.Y
  • W.X.Y + Z
   
space.gif
  ../images/main/bulllet_4dots_orange.gifPrecedence
As with any other branch of mathematics, these operators have an order of precedence. NOT operations have the highest precedence, followed by AND operations, followed by OR operations. Brackets can be used as with other forms of algebra. e.g.
   
space.gif
X.Y + Z and X.(Y + Z) are not the same function.
   
space.gif
  ../images/main/bulllet_4dots_orange.gifFunction Definitions
The logic operations given previously are defined as follows :
   
space.gif
Define f(X,Y) to be some function of the variables X and Y.
   
space.gif
f(X,Y) = X.Y
  • 1 if X = 1 and Y = 1
  • 0 Otherwise
   
space.gif
f(X,Y) = X + Y
  • 1 if X = 1 or Y = 1
  • 0 Otherwise
   
space.gif
f(X) = X'
  • 1 if X = 0
  • 0 Otherwise
   
space.gif
  ../images/main/bulllet_4dots_orange.gifTruth Tables
Truth tables are a means of representing the results of a logic function using a table. They are constructed by defining all possible combinations of the inputs to a function, and then calculating the output for each combination in turn. For the three functions we have just defined, the truth tables are as follows.
   
space.gif
AND
X
Y
F(X,Y)
0
0
0
0
1
0
1
0
0
1
1
1
   
space.gif
OR
X
Y
F(X,Y)
0
0
0
0
1
1
1
0
1
1
1
1
   
space.gif
NOT
X
F(X)
0
1
1
0
   
space.gif
Truth tables may contain as many input variables as desired
   
space.gif
F(X,Y,Z) = X.Y + Z
X
Y
Z
F(X,Y,Z)
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
1
1
1
1
1
   
space.gif
  ../images/main/bullet_green_ball.gifBoolean Switching Algebras
A Boolean Switching Algebra is one which deals only with two-valued variables. Boole's general theory covers algebras which deal with variables which can hold n values.
   
space.gif
  ../images/main/bulllet_4dots_orange.gifAxioms
Consider a set S = { 0. 1}
Consider two binary operations, + and . , and one unary operation, -- , that act on these elements. [S, ., +, --, 0, 1] is called a switching algebra that satisfies the following axioms S
   
space.gif
  ../images/main/bullet_star_pink.gifClosure    
space.gif
If X http://www.asic-world.com/images/digital/closure.gifS and Y http://www.asic-world.com/images/digital/closure.gifS then X.Y http://www.asic-world.com/images/digital/closure.gifS
If X http://www.asic-world.com/images/digital/closure.gifS and Y http://www.asic-world.com/images/digital/closure.gifS then X+Y http://www.asic-world.com/images/digital/closure.gifS
   
space.gif
  ../images/main/bullet_star_pink.gifIdentity    
space.gif
http://www.asic-world.com/images/digital/identity.gifan identity 0 for + such that X + 0 = X
http://www.asic-world.com/images/digital/identity.gifan identity 1 for . such that X . 1 = X
   
space.gif
  ../images/main/bullet_star_pink.gifCommutative Laws    
space.gif
X + Y = Y + X
X . Y = Y . X
   
space.gif
  ../images/main/bullet_star_pink.gifDistributive Laws    
space.gif
X.(Y + Z ) = X.Y + X.Z
X + Y.Z = (X + Y) . (X + Z)
   
space.gif
  ../images/main/bullet_star_pink.gifComplement    
space.gif
http://www.asic-world.com/images/digital/inverted_A.gifX http://www.asic-world.com/images/digital/closure.gifS http://www.asic-world.com/images/digital/identity.gifa complement X'such that
X + X' = 1
X . X' = 0
The complement X' is unique.
   
space.gif
   
space.gif
  ../images/main/bulllet_4dots_orange.gifTheorems   
space.gif
A number of theorems may be proved for switching algebras
   
space.gif
  ../images/main/bullet_star_pink.gifIdempotent Law   
space.gif
X + X = X
X . X = X
   
space.gif
  ../images/main/bullet_star_pink.gifDeMorgan's Law   
space.gif
(X + Y)' = X' . Y', These can be proved by the use of truth tables.
   
space.gif
Proof of (X + Y)' = X' . Y'
   
space.gif
X
Y
X+Y
(X+Y)'
0
0
0
1
0
1
1
0
1
0
1
0
1
1
1
0
   
space.gif
X
Y
X'
Y'
X'.Y'
0
0
1
1
1
0
1
1
0
0
1
0
0
1
0
1
1
0
0
0
   
space.gif
The two truth tables are identical, and so the two expressions are identical.
   
space.gif
(X.Y) = X' + Y', These can be proved by the use of truth tables.
   
space.gif
Proof of (X.Y) = X' + Y'
   
space.gif
X
Y
X.Y
(X.Y)'
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
0
   
space.gif
X
Y
X'
Y'
X'+Y'
0
0
1
1
1
0
1
1
0
1
1
0
0
1
1
1
1
0
0
0
   
space.gif
Note :DeMorgans Laws are applicable for any number of variables.
   
space.gif
  ../images/main/bullet_star_pink.gifBoundedness Law   
space.gif
X + 1 = 1
X . 0 = 0
   
space.gif
  ../images/main/bullet_star_pink.gifAbsorption Law   
space.gif
X + (X . Y) = X
X . (X + Y ) = X
   
space.gif
  ../images/main/bullet_star_pink.gifElimination Law   
space.gif
X + (X' . Y) = X + Y
X.(X' + Y) = X.Y
   
space.gif
  ../images/main/bullet_star_pink.gifUnique Complement theorem   
space.gif
If X + Y = 1 and X.Y = 0 then X = Y'
   
space.gif
  ../images/main/bullet_star_pink.gifInvolution theorem   
space.gif
X'' = X
0' = 1
   
space.gif
  ../images/main/bullet_star_pink.gifAssociative Properties   
space.gif
X + (Y + Z) = (X + Y) + Z
X . ( Y . Z ) = ( X . Y ) . Z
   
space.gif
  ../images/main/bullet_star_pink.gifDuality Principle
In Boolean algebras the duality Principle can be is obtained by interchanging AND and OR operators and replacing 0's by 1's and 1's by 0's. Compare the identities on the left side with the identities on the right.
   
space.gif
Example
   
space.gif
X.Y+Z' = (X'+Y').Z
   
space.gif
  ../images/main/bullet_star_pink.gifConsensus theorem   
space.gif
X.Y + X'.Z + Y.Z = X.Y + X'.Z
or dual form as below
(X + Y).(X' + Z).(Y + Z) = (X + Y).(X' + Z)
   
space.gif
Proof of X.Y + X'.Z + Y.Z = X.Y + X'.Z:
   
space.gif
X.Y + X'.Z + Y.Z
= X.Y + X'.Z
X.Y + X'.Z + (X+X').Y.Z
= X.Y + X'.Z
X.Y.(1+Z) + X'.Z.(1+Y)
= X.Y + X'.Z
X.Y + X'.Z
= X.Y + X'.Z
   
space.gif
(X.Y'+Z).(X+Y).Z = X.Z+Y.Z instead of X.Z+Y'.Z
X.Y'Z+X.Z+Y.Z
(X.Y'+X+Y).Z
(X+Y).Z
X.Z+Y.Z
   
space.gif
The term which is left out is called the consensus term.
   
space.gif
Given a pair of terms for which a variable appears in one term, and its complement in the other, then the consensus term is formed by ANDing the original terms together, leaving out the selected variable and its complement.
   
space.gif
Example :
The consensus of X.Y and X'.Z is Y.Z
   
space.gif
The consensus of X.Y.Z and Y'.Z'.W' is (X.Z).(Z.W')
   
space.gif
  ../images/main/bullet_star_pink.gifShannon Expansion Theorem
The Shannon Expansion Theorem is used to expand a Boolean logic function (F) in terms of (or with respect to) a Boolean variable (X), as in the following forms.
   
space.gif
F = X . F (X = 1) + X' . F (X = 0)
   
space.gif
where F (X = 1) represents the function F evaluated with X set equal to 1; F (X = 0) represents the function F evaluated with X set equal to 0.
   
space.gif
Also the following function F can be expanded with respect to X,
   
space.gif
F = X' . Y + X . Y . Z' + X' . Y' . Z
   
space.gif
= X . (Y . Z') + X' . (Y + Y' . Z)
   
space.gif
Thus, the function F can be split into two smaller functions.
   
space.gif
F (X = '1') = Y . Z'
   
space.gif
This is known as the cofactor of F with respect to X in the previous logic equation. The cofactor of F with respect to X may also be represented as F X (the cofactor of F with respect to X' is F X' ). Using the Shannon Expansion Theorem, a Boolean function may be expanded with respect to any of its variables. For example, if we expand F with respect to Y instead of X,
   
space.gif
F = X' . Y + X . Y . Z' + X' . Y' . Z
   
space.gif
= Y . (X' + X . Z') + Y' . (X' . Z)
   
space.gif
A function may be expanded as many times as the number of variables it contains until the canonical form is reached. The canonical form is a unique representation for any Boolean function that uses only minterms. A minterm is a product term that contains all the variables of F¿such as X . Y' . Z).
   
space.gif
Any Boolean function can be implemented using multiplexer blocks by representing it as a series of terms derived using the Shannon Expansion Theorem.
   
space.gif
  ../images/main/bulllet_4dots_orange.gifSummary of Laws And Theorms   
space.gif
Identity
Dual
Operations with 0 and 1

X + 0 = X (identity)
X.1 = X
X + 1 = 1 (null element)
X.0 = 0
Idempotency theorem

X + X = X
X.X = X
Complementarity

X + X' = 1
X.X' = 0
Involution theorem

(X')' = X

Cummutative law

X + Y = Y + X
X.Y = Y X
Associative law

(X + Y) + Z = X + (Y + Z) = X + Y + Z
(XY)Z = X(YZ) = XYZ
Distributive law

X(Y + Z) = XY + XZ
X + (YZ) = (X + Y)(X + Z)
DeMorgan's theorem

(X + Y + Z + ...)' = X'Y'Z'... or { f ( X1,X2,...,Xn,0,1,+,. ) } = { f ( X1',X2',...,Xn',1,0,.,+ ) }
(XYZ...)' = X' + Y' + Z' + ...
Simplification theorems

XY + XY' = X (uniting)
(X + Y)(X + Y') = X
X + XY = X (absorption)
X(X + Y) = X
(X + Y')Y = XY (adsorption)
XY' + Y = X + Y
Consensus theorem

XY + X'Z + YZ = XY + X'Z
(X + Y)(X' + Z)(Y + Z) = (X + Y)(X' + Z)
Duality

(X + Y + Z + ...)D = XYZ... or {f(X1,X2,...,Xn,0,1,+,.)}D = f(X1,X2,...,Xn,1,0,.,+)
(XYZ ...)D = X + Y + Z + ...
Shannon Expansion Theorem

f(X1,...,Xk,...Xn)
Xk * f(X1,..., 1 ,...Xn) + Xk' * f(X1,..., 0 ,...Xn)
f(X1,...,Xk,...Xn)
[Xk + f(X1,..., 0 ,...Xn)] * [Xk' + f(X1,..., 1 ,...Xn)]


Logic Gates
A logic gate is an electronic circuit/device which makes the logical decisions. To arrive at this decisions, the most common logic gates used are OR, AND, NOT, NAND, and NOR gates. The NAND and NOR gates are called universal gates. The exclusive-OR gate is another logic gate which can be constructed using AND, OR and NOT gate.
   
space.gif
Logic gates have one or more inputs and only one output. The output is active only for certain input combinations. Logic gates are the building blocks of any digital circuit. Logic gates are also called switches. With the advent of integrated circuits, switches have been replaced by TTL (Transistor Transistor Logic) circuits and CMOS circuits. Here I give example circuits on how to construct simples gates.
Symbolic Logic
Boolean algebra derives its name from the mathematician George Boole. Symbolic Logic uses values, variables and operations.
   
space.gif
  ../images/main/bulllet_4dots_orange.gifInversion
A small circle on an input or an output indicates inversion. See the NOT, NAND and NOR gates given below for examples.
   
space.gif
../images/digital/not.gif   
space.gif
  ../images/main/bulllet_4dots_orange.gifMultiple Input Gates
Given commutative and associative laws, many logic gates can be implemented with more than two inputs, and for reasons of space in circuits, usually multiple input, complex gates are made. You will encounter such gates in real world (maybe you could analyze an ASIC lib to find this).
   
space.gif
  ../images/main/bulllet_4dots_orange.gifGates Types    
space.gif
  • AND
  • OR
  • NOT
  • BUF
  • NAND
  • NOR
  • XOR
  • XNOR
   
space.gif
   
space.gif
  ../images/main/bulllet_4dots_orange.gifAND Gate
The AND gate performs logical multiplication, commonly known as AND function. The AND gate has two or more inputs and single output. The output of AND gate is HIGH only when all its inputs are HIGH (i.e. even if one input is LOW, Output will be LOW).
   
space.gif
If X and Y are two inputs, then output F can be represented mathematically as F = X.Y, Here dot (.) denotes the AND operation. Truth table and symbol of the AND gate is shown in the figure below.
   
space.gif
Symbol
   
space.gif
../images/digital/boolea_5.gif   
space.gif
Truth Table
   
space.gif
X
Y
F=(X.Y)
0
0
0
0
1
0
1
0
0
1
1
1
   
space.gif
Two input AND gate using "diode-resistor" logic is shown in figure below, where X, Y are inputs and F is the output.
   
space.gif
Circuit
../images/digital/gates_and_2rtl.gif     
space.gif
If X = 0 and Y = 0, then both diodes D1 and D2 are forward biased and thus both diodes conduct and pull F low.
   
space.gif
If X = 0 and Y = 1, D2 is reverse biased, thus does not conduct. But D1 is forward biased, thus conducts and thus pulls F low.
   
space.gif
If X = 1 and Y = 0, D1 is reverse biased, thus does not conduct. But D2 is forward biased, thus conducts and thus pulls F low.
   
space.gif
If X = 1 and Y = 1, then both diodes D1 and D2 are reverse biased and thus both the diodes are in cut-off and thus there is no drop in voltage at F. Thus F is HIGH.
   
space.gif
   
space.gif
  ../images/main/bullet_star_pink.gifSwitch Representation of AND Gate
In the figure below, X and Y are two switches which have been connected in series (or just cascaded) with the load LED and source battery. When both switches are closed, current flows to LED.
   
space.gif
../images/digital/boolea_0.gif   
space.gif
  ../images/main/bullet_star_pink.gifThree Input AND gate
Since we have already seen how a AND gate works and I will just list the truth table of a 3 input AND gate. The figure below shows its symbol and truth table.
   
space.gif
Circuit
../images/digital/gate_3and.gif   
space.gif
Truth Table
X
Y
Z
F=X.Y.Z
0
0
0
0
0
0
1
0
0
1
0
0
0
1
1
0
1
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
   
space.gif
  ../images/main/bulllet_4dots_orange.gifOR Gate
The OR gate performs logical addition, commonly known as OR function. The OR gate has two or more inputs and single output. The output of OR gate is HIGH only when any one of its inputs are HIGH (i.e. even if one input is HIGH, Output will be HIGH).
   
space.gif
If X and Y are two inputs, then output F can be represented mathematically as F = X+Y. Here plus sign (+) denotes the OR operation. Truth table and symbol of the OR gate is shown in the figure below.
   
space.gif
Symbol
   
space.gif
../images/digital/gate_or.gif   
space.gif
Truth Table
   
space.gif
X
Y
F=(X+Y)
0
0
0
0
1
1
1
0
1
1
1
1
   
space.gif
Two input OR gate using "diode-resistor" logic is shown in figure below, where X, Y are inputs and F is the output.
   
space.gif
Circuit
../images/digital/gates_or_rtl.gif   
space.gif
If X = 0 and Y = 0, then both diodes D1 and D2 are reverse biased and thus both the diodes are in cut-off and thus F is low.
   
space.gif
If X = 0 and Y = 1, D1 is reverse biased, thus does not conduct. But D2 is forward biased, thus conducts and thus pulling F to HIGH.
   
space.gif
If X = 1 and Y = 0, D2 is reverse biased, thus does not conduct. But D1 is forward biased, thus conducts and thus pulling F to HIGH.
   
space.gif
If X = 1 and Y = 1, then both diodes D1 and D2 are forward biased and thus both the diodes conduct and thus F is HIGH.
   
space.gif
  ../images/main/bullet_star_pink.gifSwitch Representation of OR Gate
In the figure, X and Y are two switches which have been connected in parallel, and this is connected in series with the load LED and source battery. When both switches are open, current does not flow to LED, but when any switch is closed then current flows.
   
space.gif
../images/digital/boolea_2.gif   
space.gif
  ../images/main/bullet_star_pink.gifThree Input OR gate
Since we have already seen how an OR gate works, I will just list the truth table of a 3-input OR gate. The figure below shows its circuit and truth table.
   
space.gif
Circuit
../images/digital/gates_or_3rtl.gif   
space.gif
Truth Table
X
Y
Z
F=X+Y+Z
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1

0 comments: