Aimld23 Dlca Ex
Aimld23 Dlca Ex
Aimld23 Dlca Ex
AND gate truth table OR gate truth table NOT gate truth table
A B Q A B Q A Q
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1 Boolean Expression Q = NOT
A or A
1 1 1 1 1 1
Read as inversion of A gives Q
Boolean Expression Q = A.B Boolean Expression Q = A+B
Read as A AND B gives Q Read as A OR B gives Q
Conclusion :
This is how we can verify the truth table and the Boolean
Date of Performance : 15 September 2021,
Aim : Verification of NAND gate as Universal gate and Design a NAND Logic
Conclusion :
Aim : Verification of NOR gate as Universal gate and Design a NOR Logic Circuit
Conclusion :
Aim : Study of Binary to Gray code converter and Gray to Binary.Software : Roll app
0 0000 0000
1 0001 0001
2 0010 0010
3 0011 0011
4 0110 0100
5 0111 0101
6 0101 0110
7 0100 0111
8 1100 1000
9 1101 1001
10 1111 1010
11 1110 1011
12 1010 1100
13 1011 1101
14 1001 1110
15 1000 1111
Conclusion:
That’s how we con convert gray code to binary and binary to gray code
Date of Performance : 12 October 2021
Full Adder
Result (in terms of truth table) :
Half Adder Truth Table
0 0 0+0 0 0 0 0
0 1 0+1 1 1 1 0
1 0 1+0 1 1 1 0
1 1 1+1 2 10 0 1
Conclusion:
That’s how we can draw the half adder and full adder.
Date of Performance : 15 November 2021
Half subtractor
Full Subtractor
Conclusion:
That’s how we can draw the half subtractor and full subtractor.
Date of Performance : 22 November 2021
#include <stdio.h>
#include <math.h>
#define BIT 4
void d_b(int dec_s, int bin[BIT]) //function to convert decimal(int type) to binary(array type)
carry = 0;
if (dec_s >= 0)
return;
else
bin[j] = bin[j] == 0 ? 1 : 0; //complementing the bits if decimal is found to be less than zero
if (bin[0] + 1 <= 1)
bin[0] += 1;
return;
else
bin[i] += carry;
carry = 0;
return;
else
}
}
int i = 0;
int ans = 0;
return ans;
m2[i] += carry;
carry = 0;
return;
else
m2[i] = (m2[i] + carry) % 2; //if result exceeds 1 then take the remainder
int carry = 0;
carry += m[i];
a[i] += carry;
carry = 0;
else
carry = 1;
return carry;
}
int ashr(int a[BIT], int q[BIT], int q_1) //performing ASR b/w A Q and Q-1
q_1 = q[0];
q[i - 1] = q[i];
q[BIT - 1] = a[0];
a[i - 1] = a[i];
return q_1;
scanf("%d", &multiplicand);
scanf("%d", &multiplier);
q_1 = 0;
d_b(multiplier,q);
twos(m, m2);
printf("\n\n\t\tA\t Q\t\tQ-1\tOPERATION");
int a1 = 1;
a1++;
printf("\t");
{
printf(" %d", q[k]);
add(a, m2);
printf("\n ");
printf("\t");
add(a, m);
printf("\n ");
printf("\t");
for (int k = BIT - 1; k >= 0; k--)
printf("\n ");
printf("\t");
{
printf(" %d", q[k]);
if (sign)
a[k] = a[k] == 1 ? 0 : 1;
q[k] = q[k] == 1 ? 0 : 1;
one[0] = 1;
int carry = 0;
if (carry)
if (sign)
printf("-");