Bitwise operations, C/C++ Programming

Bitwise Operations

1. Write a function that has an int parameter n, makes an integer mask having the bit 1 at the nth place from the rightmost bit, and returns the mask. For example, when n = 5 is passed to the function, the function will return 0x20 (Note that 0x20 is 00000000 00000000 00000000 00100000).

2. Write a function that has two int parameters num and n, and returns TRUE when the nth bit in num is 1, otherwise FALSE. This function should use the function in the above problem (1). (Be careful how to handle Boolean values in C.)

3. Write a function that has a single int parameter n and returns an int: 0 if n is negative, otherwise 1. You are not allowed to simply check the integer value, and should use the function in the above problem (2).

4. Write a function that has four unsigned char parameters, combines the four one-byte integer values into an unsigned integer, and returns the unsigned integer. When the four one-byte integers are combined, the first value must be used for the first byte in the resulting unsigned integer, the 2nd value for the second byte, the 3rd value for the 3rd byte, and the 4th value for the last byte.

5. Write a function that has int parameter n, makes another type of mask having n bit 1's from the left most bit and 32- n bit 0's next. The mask is called netmask in this seminar, and the function will return the netmask. (Note that a netmask consists of two parts of bit 1's and bit 0's.)

6. Write a function that has two unsigned int parameters of an IPv4 address (i.e., an unsigned int) and a netmask (i.e., an unsigned int), and returns the network id part in the IPv4 address. (Note that the network id part in an IPv4 address is obtained from the address by clearing some bits that are indicated by the bit 0's in a netmask.)

7. Write a function to check odd-parity of a given int parameter. That is that the function returns 1 when the number of bit 1's is odd, otherwise 0.

8.    Write a main function that tests all the functions in (1) - (7).

  • The test data can be hard-coded in the main function, and each function should be tested at least 5 times.
  • The main function should appear before any other functions.
  • When you print integers, you should use the format specifier printing integers in the hexadecimal notation.
  • You should use only one C file for this assignment.
  • You should not put any printf() in the functions in (1) - (7).
Posted Date: 2/15/2013 2:03:33 AM | Location : United States

Related Discussions:- Bitwise operations, Assignment Help, Ask Question on Bitwise operations, Get Answer, Expert's Help, Bitwise operations Discussions

Write discussion on Bitwise operations
Your posts are moderated
Related Questions
write a program to find the area under the curve y=f(x) between x=a & x=b

algorithm to prepare mark sheet of a student by inputing name,branchcode,semester,register no,5 marks of students and total mark of student

Program to show the ascii value of characters: int main() {                 int one_char;                 cout                 one_char = getch();

program to check whether a given point lies inside a rectangle or not

How does an ERP System facilitates better decision making?

Describe about the container class. -Class to hold objects in external storage or memory. It acts as a generic holder. - It has a predefined behaviour and a known interface.

At a shop of marbles, packs of marbles are prepared. Packets are named A, B, C, D, E …….. All packets are kept in a VERTICAL SHELF in random order. Any numbers of packets with thes

Project Description: We are seeking online invoice OCR solution. That will help us to automate accounts payable function. User should be able to use the offered pdf file or s

Differentiate between functions getch () and getche (). - Both functions accept a character input value from user. - When getch () is used, key that was pressed won't appear

Inline Functions Imagine a c program, which reads disk records having employee information. If this is a payroll application each employee record data is probably processed by