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); }
Explain that the lost acknowledgement does not necessarily enforce retransmission of the packet . To guarantee reliable transfer, protocols utilize positive acknowledgement al
Granularity Granularity refers to the quantity of computation done in parallel relative to the dimension of the entire program. In parallel computing, granularity is a qualitat
Problem: (a) What do you understand by the principle of locality of reference and explain how this is exploited in cache design. (b) Consider a 32-bit microprocessor that h
A interrupt that can be turned off by the programmer is called as Maskable interrupt.
What is parallel adder? Draw and explain block diagram for 4 bit parallel adder. Ans: By using full adder circuit, any two bits can be added along with third input like a ca
And-Elimination rule: In generally English says that "if you know that lots of things are all true, so you know like any one of them is also true". Because you can specify a c
Question 1: Describe the five maturity levels of KM that an organization faces when adopting the Frid's KM framework. Question 2: (a) Describe three major issues that
JavaBeans are reusable software components written in the Java programming language, designed to be influenced visually by a software development environment, like JBuilder or Visu
For what is defparam used? Though, during compilation of Verilog modules, parameter values can be altered separately for every module instance. This allows us to pa
? Activities: An activity shows an action that performed in the system. ? Transitions: Transitions are shown by open arrow heads. Transitions are used to specify the flow among
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