Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
We can also use the logical operators to numbers directly and perform simple bit manipulation . The operators are
& Bitwise AND | Bitwise OR ^ Bitwise exclusive or ~ Bitwise one's complement i.e. NOT << Left shift >> Right shift
Example A 8 bit number represents a coded function, bit 3-4 describes the operation to be performed on the number in bits 0- 2 and 5-7 the function i.e. 00 Add 01 Subtract 10 Divide 11 Multiply Write a Program to extract the number and operation
Answer We need to extract the bits 3-4, the answer is bit operators Assume number is in the variable A i.e. 11011011 Mask off the first number i.e. bit 0-2 num1 = a & 0x07; 11011011 and 00000111 00000011 Mask off the second number i.e. bit 5 -7 num2 = a & 0xe0; 11011011 and 11100000 11000000 We need to shift num2 down by 5 places i.e. num2 = num2 >>5; 00000110
This could be done in one instruction i.e. num2 = (a & 0xe0) >> 5; Mask off the operation bits i.e. bit 4-5 operation = (a & 0x18) >> 3; We can then use the switch statement to select each operation switch(operation) { case 0: total = num1+num2; break; case 1: total = num1-num2; break; case 2: total = num1/num2; break; case 3: total = num1*num2; break; } Hence the entire program is #include void main() { char prompt; /*Author : Mr James Mc Carren Company: Staffordshire University Date: 26th August 2012 Version 1.0 Function : To show bit manipulation Modifications: none*/ int num1,num2,operation,total,a; printf("Please enter in the number\n\r"); scanf("%x",&a); num1 = a & 0x07; num2 = (a & 0xe0) >> 5 ; operation = (a & 0x18) >> 3; switch(operation) { case 0: total = num1+num2; break; case 1: total = num1-num2; break; case 2: total = num1/num2; break; case 3: total = num1*num2; break; } printf("The total is %d\n\r",total); printf("Press and key to exit \n\r"); scanf("\n%c",&prompt); }
a c program to implement multiple stack in a single array
Specify the default alignment for the following field types: 'D' - Left, 'F'-Right, 'N'-Left, 'I'-Right, 'T'-Left.
Q.Joint Application Development session leader? JAD session leader: JAD leader organizes and runs the JAD. This person is trained in group management and facilitation as well
Q. Write an interrupt routine to handle 'division by zero'? This file can be loaded just like a COM file though makes itself permanently resident until the system is running.
How do you pass basic types by reference? In the case of basic types like bool, int, uint, etc. you can in fact choose among the two forms. If you prefix the method parameter
Explain the Compiler - Computer Programming? The Compiler is a program that translates source code into object code. The compiler derives its name from the means it works looki
Logical Representations: If every human being spoke the same kind of language, there would be several less misunderstanding in the world. The problem with software engineering
Explain the mechanisms of propagation of radio communication. Radio communication deals along with electronic radiation of electromagnetic energy from one point to other by the
Define Minterm and the Maxterm - Canonical Form? Any Boolean expression perhaps expressed in terms of either minterms or maxterms. The literal is a single variable within a t
how many errors will be left after defect amplification and removal method on the following data design=40 analysis=30 maintenance=20 testing 35 coding 25 take 75% removal efficie
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd