Question: 2. [25] Suppose we again number the bytes in a 32-bit word from 0 (least significant) to 3 (most significant). Write code for the following
![2. [25] Suppose we again number the bytes in a 32-bit](https://dsd5zvtm8ll6.cloudfront.net/si.experts.images/questions/2024/09/66f05da5dd081_64566f05da53b3d3.jpg)
2. [25] Suppose we again number the bytes in a 32-bit word from 0 (least significant) to 3 (most significant). Write code for the following C function that will return an unsigned int such that byte i of x is replaced by byte b : unsigned int replace (unsigned int x, int i, unsigned char b ); Here are some test runs: replace(012345678,3,0AB):0AB345678replace(0x12345678,0,0xAB):0x123456AB Use only bitwise operators; no if statements, loops, or arithmetic operators (+,,, l, \%). Also write an int main() function to test your function. Hint: use shifts to align the input byte and a mask to isolate the bytes that should remain. Comment your code, including every line that uses a bitwise operator. Name your source file 12.c
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
