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); }
Define busy waiting and spinlock. When a process is in its critical section, any other process that tries to enter its critical section must loop continuously in the entry cod
Aggregation Aggregation is a special form of association that models the "part-whole" or "a-part-of" relationship as an aggregate (the whole) and parts. The most important pro
Example of Unification: Let now here, assume instead that we had these two sentences as: knows(john,X) → hates(john, X) knows(jack, mary) Thus here the predicate n
Q. What is Charge-coupled Devices? CCDs are employed for storing information. They have arrays of cells that can hold charge packets of electron. A word is signified by a set o
what is critical section problem in operating system with diagram
What is time out mechanism. If one unit is faulty the data transfer will not be done. Such an error can be detected using time out mechanism which makes an alarm if the data tr
Q. Explain Register Indirect Addressing? In this addressing technique the operand is data in memory pointed to by a register. Or we can say in other words that the operand fie
Artificial Intelligence 1. Explain about artificial intelligence? What are the achievements of AI? 2. Elaborate state space search briefly. 3. Prove that A* is optimal.
Q. Signed 1s complement representation? Another possibility that is also simple is use of signed 1's complement. Signed 1's complement has a principal. Add both numbers includi
Q. What is Flash Memory? This memory is other form of semiconductor memory that was first introduced in mid-1980. These memories can be reprogrammed at high speed and therefo
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