Thursday, April 23, 2026

Laws of Boolean Algebra




As well as the logic symbols “0” and “1” being used to represent a digital input or output, we can also use them as constants for a permanently “Open” or “Closed” circuit or contact respectively.

A set of rules or Laws of Boolean Algebra expressions have been invented to help reduce the number of logic gates needed to perform a particular logic operation resulting in a list of functions or theorems known commonly as the Laws of Boolean Algebra.

Boolean Algebra is the mathematics we use to analyse digital gates and circuits. We can use these “Laws of Boolean” to both reduce and simplify a complex Boolean expression in an attempt to reduce the number of logic gates required. Boolean Algebra is therefore a system of mathematics based on logic that has its own set of rules or laws which are used to define and reduce Boolean expressions.

The variables used in Boolean Algebra only have one of two possible values, a logic “0” and a logic “1” but an expression can have an infinite number of variables all labelled individually to represent inputs to the expression, For example, variables A, B, C etc, giving us a logical expression of A + B = C, but each variable can ONLY be a 0 or a 1.

Examples of these individual laws of Boolean, rules and theorems for Boolean Algebra are given in the following table.

Truth Tables for the Laws of Boolean

Boolean
Expression
DescriptionBoolean Algebra
Law or Rule
A + 1 = 1A in parallel with
closed = “CLOSED”
Annulment
A + 0 = AA in parallel with
open = “A”
Identity
A . 1 = AA in series with
closed = “A”
Identity
A . 0 = 0A in series with
open = “OPEN”
Annulment
A + A = AA in parallel with
A = “A”
Idempotent
A . A = AA in series with
A = “A”
Idempotent
NOT A = ANOT NOT A
(double negative) = “A”
Double Negation
A + A = 1A in parallel with
NOT A = “CLOSED”
Complement
A . A = 0A in series with
NOT A = “OPEN”
Complement
A+B = B+AA in parallel with B =
B in parallel with A
Commutative
A.B = B.AA in series with B =
B in series with A
Commutative
A+B = A.Binvert and replace OR with ANDde Morgan’s Theorem
A.B = A+Binvert and replace AND with ORde Morgan’s Theorem

The basic Laws of Boolean Algebra that relate to the Commutative Law allowing a change in position for addition and multiplication, the Associative Law allowing the removal of brackets for addition and multiplication, as well as the Distributive Law allowing the factoring of an expression, are the same as in ordinary algebra.

Each of the Boolean Laws above are given with just a single or two variables, but the number of variables defined by a single law is not limited to this as there can be an infinite number of variables as inputs too the expression. These Boolean laws detailed above can be used to prove any given Boolean expression as well as for simplifying complicated digital circuits.

A brief description of the various Laws of Boolean are given below with A representing a variable input.

Description of the Laws of Boolean Algebra

  • Annulment Law – A term AND´ed with a “0” equals 0 or OR´ed with a “1” will equal 1
  •  
    • A . 0 = 0    A variable AND’ed with 0 is always equal to 0
    • A + 1 = 1    A variable OR’ed with 1 is always equal to 1
  •  
  • Identity Law – A term OR´ed with a “0” or AND´ed with a “1” will always equal that term
  •  
    • A + 0 = A   A variable OR’ed with 0 is always equal to the variable
    • A . 1 = A    A variable AND’ed with 1 is always equal to the variable
  •  
  • Idempotent Law – An input that is AND´ed or OR´ed with itself is equal to that input
  •  
    • A + A = A    A variable OR’ed with itself is always equal to the variable
    • A . A = A    A variable AND’ed with itself is always equal to the variable
  •  
  • Complement Law – A term AND´ed with its complement equals “0” and a term OR´ed with its complement equals “1”
  •  
    • A . A = 0    A variable AND’ed with its complement is always equal to 0
    • A + A = 1    A variable OR’ed with its complement is always equal to 1
  •  
  • Commutative Law – The order of application of two separate terms is not important
  •  
    • A . B = B . A    The order in which two variables are AND’ed makes no difference
    • A + B = B + A    The order in which two variables are OR’ed makes no difference
  •  
  • Double Negation Law – A term that is inverted twice is equal to the original term
  •  
    • A = A     A double complement of a variable is always equal to the variable
  •  
  • de Morgan´s Theorem – There are two “de Morgan´s” rules or theorems,
  •  
  • (1) Two separate terms NOR´ed together is the same as the two terms inverted (Complement) and AND´ed for example:  A+B = A . B
  •  
  • (2) Two separate terms NAND´ed together is the same as the two terms inverted (Complement) and OR´ed for example:  A.B = A + B
 

Other algebraic Laws of Boolean not detailed above include:

  • Boolean Postulates – While not Boolean Laws in their own right, these are a set of Mathematical Laws which can be used in the simplification of Boolean Expressions.
  •  
    • 0 . 0 = 0    A 0 AND’ed with itself is always equal to 0
    • 1 . 1 = 1    A 1 AND’ed with itself is always equal to 1
    • 1 . 0 = 0    A 1 AND’ed with a 0 is equal to 0
    • 0 + 0 = 0    A 0 OR’ed with itself is always equal to 0
    • 1 + 1 = 1    A 1 OR’ed with itself is always equal to 1
    • 1 + 0 = 1    A 1 OR’ed with a 0 is equal to 1
    • 1 = 0    The Inverse (Complement) of a 1 is always equal to 0
    • 0 = 1    The Inverse (Complement) of a 0 is always equal to 1
  •  
  • Distributive Law – This law permits the multiplying or factoring out of an expression.
  •  
    • A(B + C) = A.B + A.C    (OR Distributive Law)
    • A + (B.C) = (A + B).(A + C)    (AND Distributive Law)
  •  
  • Absorptive Law – This law enables a reduction in a complicated expression to a simpler one by absorbing like terms.
  •  
    • A + (A.B) = (A.1) + (A.B) = A(1 + B) = A  (OR Absorption Law)
    • A(A + B) = (A + 0).(A + B) = A + (0.B) = A  (AND Absorption Law)
  •  
  • Associative Law – This law allows the removal of brackets from an expression and regrouping of the variables.
  •  
    • A + (B + C) = (A + B) + C = A + B + C    (OR Associate Law)
    • A(B.C) = (A.B)C = A . B . C    (AND Associate Law)

Boolean Algebra Functions

Using the information above, simple 2-input AND, OR and NOT Gates can be represented by 16 possible functions as shown in the following table.

FunctionDescriptionExpression
1.NULL0
2.IDENTITY1
3.Input AA
4.Input BB
5.NOT AA
6.NOT BB
7.A AND B (AND)A . B
8.A AND NOT BA . B
9.NOT A AND BA . B
10.NOT AND (NAND)A . B
11.A OR B (OR)A + B
12.A OR NOT BA + B
13.NOT A OR BA + B
14.NOT OR (NOR)A + B
15.Exclusive-ORA . B + A . B
16.Exclusive-NORA . B + A . B

Laws of Boolean Algebra Example No1

Using the above laws, simplify the following expression:  (A + B)(A + C)

Q =(A + B).(A + C) 
 A.A + A.C + A.B + B.C – Distributive law
 A + A.C + A.B + B.C – Idempotent AND law (A.A = A)
 A(1 + C) + A.B + B.C – Distributive law
 A.1 + A.B + B.C – Identity OR law (1 + C = 1)
 A(1 + B) + B.C – Distributive law
 A.1 + B.C – Identity OR law (1 + B = 1)
Q =A + (B.C) – Identity AND law (A.1 = A)
 

Then the expression:  (A + B)(A + C) can be simplified to A + (B.C) as in the Distributive law.

Code Conversion



There are many methods or techniques which can be used to convert code from one format to another. We'll demonstrate here the following

  • Binary to BCD Conversion
  • BCD to Binary Conversion
  • BCD to Excess-3
  • Excess-3 to BCD

Binary to BCD Conversion

Steps

  • Step 1 -- Convert the binary number to decimal.

  • Step 2 -- Convert decimal number to BCD.

Example − convert (11101)2 to BCD.

Step 1 − Convert to Decimal

Binary Number − 111012

Calculating Decimal Equivalent −

StepBinary NumberDecimal Number
Step 1111012((1 × 24) + (1 × 23) + (1 × 22) + (0 × 21) + (1 × 20))10
Step 2111012(16 + 8 + 4 + 0 + 1)10
Step 31110122910

Binary Number − 111012 = Decimal Number − 2910

Step 2 − Convert to BCD

Decimal Number − 2910

Calculating BCD Equivalent. Convert each digit into groups of four binary digits equivalent.

StepDecimal NumberConversion
Step 1291000102 10012
Step 2291000101001BCD

Result

(11101)2 =  (00101001)BCD

BCD to Binary Conversion

Steps

  • Step 1 -- Convert the BCD number to decimal.

  • Step 2 -- Convert decimal to binary.

Example − convert (00101001)BCD to Binary.

Step 1 - Convert to BCD

BCD Number − (00101001)BCD

Calculating Decimal Equivalent. Convert each four digit into a group and get decimal equivalent for each group.

StepBCD NumberConversion
Step 1(00101001)BCD00102 10012
Step 2(00101001)BCD210 910
Step 3(00101001)BCD2910

BCD Number − (00101001)BCD = Decimal Number − 2910

Step 2 - Convert to Binary

Used long division method for decimal to binary conversion.

Decimal Number − 2910

Calculating Binary Equivalent −

StepOperationResultRemainder
Step 129 / 2141
Step 214 / 270
Step 37 / 231
Step 43 / 211
Step 51 / 201

As mentioned in Steps 2 and 4, the remainders have to be arranged in the reverse order so that the first remainder becomes the least significant digit (LSD) and the last remainder becomes the most significant digit (MSD).

Decimal Number − 2910 = Binary Number − 111012

Result

(00101001)BCD = (11101)2

BCD to Excess-3

Steps

  • Step 1 -- Convert BCD to decimal.

  • Step 2 -- Add (3)10 to this decimal number.

  • Step 3 -- Convert into binary to get excess-3 code.

Example − convert (0110)BCD to Excess-3.

Step 1 − Convert to decimal

(0110)BCD = 610

Step 2 − Add 3 to decimal

(6)10 + (3)10 = (9)10

Step 3 − Convert to Excess-3

(9)10 = (1001)2

Result

(0110)BCD = (1001)XS-3

Excess-3 to BCD Conversion

Steps

  • Step 1 -- Subtract (0011)2 from each 4 bit of excess-3 digit to obtain the corresponding BCD code.

Example − convert (10011010)XS-3 to BCD.

Given XS-3 number  = 1 0 0 1 1 0 1 0 
Subtract (0011)2   = 1 0 0 1 0 1 1 1
                    --------------------
               BCD = 0 1 1 0   0 1 1 1

Tuesday, April 21, 2026

Computer architecture



In computer engineering, computer architecture is a set of rules and methods that describe the functionality, organization, and implementation of computer systems. Some definitions of architecture define it as describing the capabilities and programming model of a computer but not a particular implementation.

Von Neumann Architecture

Von Neumann architecture was first published by John von Neumann in 1945.

His computer architecture design consists of a Control Unit, Arithmetic and Logic Unit (ALU), Memory Unit, Registers and Inputs/Outputs.

Von Neumann architecture is based on the stored-program computer concept, where instruction data and program data are stored in the same memory.  This design is still used in most computers produced today.

Central Processing Unit (CPU)

The Central Processing Unit (CPU) is the electronic circuit responsible for executing the instructions of a computer program.

It is sometimes referred to as the microprocessor or processor.

 
 

The CPU contains the ALU, CU and a variety of registers.

Registers

Registers are high speed storage areas in the CPU.  All data must be stored in a register before it can be processed.

MARMemory Address RegisterHolds the memory location of data that needs to be accessed
MDRMemory Data RegisterHolds data that is being transferred to or from memory
ACAccumulatorWhere intermediate arithmetic and logic results are stored
PCProgram CounterContains the address of the next instruction to be executed
CIRCurrent Instruction registerContains the current instruction during processing

Arithmetic and Logic Unit (ALU)

The ALU allows arithmetic (add, subtract etc) and logic (AND, OR, NOT etc) operations to be carried out.

Control Unit (CU)

The control unit controls the operation of the computer’s ALU, memory and input/output devices, telling them how to respond to the program instructions it has just read and interpreted from the memory unit.

The control unit also provides the timing and control signals required by other computer components.

Buses

Buses are the means by which data is transmitted from one part of a computer to another, connecting all major internal components to the CPU and memory.

A standard CPU system bus is comprised of a control bus,data bus and address bus. 

Address BusCarries the addresses of data (but not the data) between the processor and memory
Data BusCarries data between the processor, the memory unit and the input/output devices
Control BusCarries control signals/commands from the CPU (and status signals from other devices) in order to control and coordinate all the activities within the computer

Memory Unit

The memory unit consists of RAM, sometimes referred to as primary or main memory.  Unlike a hard drive (secondary memory), this memory is fast and also directly accessible by the CPU.

RAM is split into partitions.  Each partition consists of an address and its contents (both in binary form).

The address will uniquely identify every location in the memory.

Loading data from permanent memory (hard drive), into the faster and directly accessible temporary memory (RAM), allows the CPU to operate much quicker.

 

 

Computer Overview

Today’s world is an information-rich world and it has become a necessity for everyone to know about computers. A computer is an ...