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); }
What is Open Database Connectivity (ODBC) It happens that in addition to conventional or most popular database management systems, many companies go for proprietary software c
a. Design a fast adder. What are the variations in a fast adder? b. Define how the virtual address is changed into real address in a paged virtual memory system. Give an example
Problem: (a) What are the two main advantages of sound? (b) UTMDigitlab ltd, specialized in digitizing sound, converts an audio stream of the latest album of Britney Spea
Write explanatory notes on Microprocessor development system. Microprocessor development system: Computer systems have undergone many changes recently. Machines which once fi
#questi on.. How it works explain
is the time required by a sector to reach below read/write head. Latency Time is the time needed by a sector to reach below read/write head.
Explain CPU based exchange. CPU Based Exchange: All the control equipment is replaced with a single processor that must be quite powerful, in centralized control. This should
Let's provide you a fundamental illustration by which you may be able to define the concept of instruction format. Let us consider the instruction format of a MIPS computer. MI
Instruction buffers For taking the complete advantage of pipelining pipelines must be filled continuously. So instruction fetch rate must be matched with pipeline consumption r
Q. Determine what part of global array to work on thread number? #include void subdomain(float x[ ], int istart, int ipoints) { int i; for (i = 0; i x[istart+
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