Question
1. Write a C expression (or a collection of sequential expressions) that will swap the m th and n th byte of the 64-bit quantity
1. Write a C expression (or a collection of sequential expressions) that will swap the mth and nth byte of the 64-bit quantity (stored as a 64-bit integer, but is really 8 ascii characters). For this problem the index of the least significant byte is 0, and the index of the most significant byte is 7 (so 0 <= n,m <= 7). So if x = hi calss = 0x68692063616C7373 (a 64-bit quantity), and we want to swap the a and the l to get hi class we could have n equals 3 and m equals 2, the C expression(s) would return 0x686920636C617373 = hi class. You cannot use, division, multiplication, or modulus, relative comparisons (<, >, <=, >=), loops, switches, function calls, macros, conditionals (if or ?:). You are allowed to use all bit level and logic operations, left and right shifts, addition and subtraction, equality and inequality tests, integer constants (<=255), INT_MIN and INT_MAX, and casting between data types.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started