Skip to main content

BIT AND Operation

/**
    Program Name: AND Operation Between To Binary Numbers

    Description: This Program Converts A Decimal Number to its Binary
                       Equivalent, using shift Operator, and also performs the
                      "logical And" operation between them, and displays output.
                

    Author:  Tauqirul Haque
       
*/


void printBinary(int i);

int main()
{
    int number, number2;
    printf("Enter The Number : ");
    scanf("%d",&number);
   
    printf("Enter The Number : ");
    scanf("%d",&number2);
   
    printf(" \nA  =    :  ",number);
    printBinary(number);
   
    printf(" \nB  =    :  ",number);
    printBinary(number2);
   
    printf("\n==================================================");
   
    printf(" \n\nA & B   :  ");
    printBinary(number & number2);
    printf("\n==================================================\n\n");
   
}

void printBinary(int number)
{
    int mask;
    int position;
    int msb;
    int bit;
    int hexDiff = 0;
    int intTotalByte = sizeof(int);
   
    if(intTotalByte == 2)
    {
        msb = 15;
    }
    else
    {
        msb = 31;
    }
       
    for(position = msb; position >=0; position--)
    {
        mask = 1<
        bit = (number & mask)?1:0;
        printf("%d",bit);
        hexDiff++;
        if(hexDiff == 4)
        {
            printf(" ");
            hexDiff = 0;
        }
    }
   
    printf("\n");
}

Comments

Popular posts from this blog

SIMPLE QUEUE

/**     Program Name: SIMPLE QUEUE     Description: This program is for Implementing Simple QUEUE     Author:  Tauqirul Haque         */ #define SIZE 3 int front = -1; int rear = -1; int queue[SIZE]; void deleteElement(); void insertElement(); void displayElement(); void main() {     int ch;     while(ch !=4)     {         printf("\n\t\t1. Insert into queue..\n");         printf("\t\t2. Delete From Queue...\n");         printf("\t\t3. Diplay Queue...\n");         printf("\t\t4. Exit Program ...\n");                 printf("Enter Your Choice #  ");         scanf("%d",&ch);         ...

Prevent Users From Changing their Passwords

Mostly /usr/bin/passwd command has the following SUID permission (Given Below) -r-s--x--x 1 root root 19348 Jan 12 2008 /usr/bin/passwd The numerical value of the file permission translates to 4411. Whenever a SUID file is executed, the process that runs it, is granted access to the system resources based on the user who owns the file and not the user who created the process. So, we need to remove the SUID for that command, so that the normal users are denied the privileges of updating the file. To do so we use the following command chmod u-s /usr/bin/passwd - OR chmod 511 /usr/bin/passwd

Singly Linked List

/**     Program Name: Singly Linked List     Description: This Program is for Implemeting Singly Linked List     Author:  Tauqirul Haque         */ struct Linklist {     int item;     struct Linklist *next; }; typedef struct Linklist node; void insertAtBeginning(node **); void createAppendNode(node **); void insertInMiddle(node **); void deleteNode(node **); void displayNode(node **); void countNode(node **);  void searchElement(node **); void reverse(node **); void main() {     node *head = NULL;     int choice = 0;     while(choice != 9)     {             printf("\n\t\t\t1. Add Node At The Beginning ");     printf("\n\t\t\t2. Insert Element in the Middle ");     printf("\n\t\t\t3. Append New Node "); ...