Answer is as follows :
MOV EAX,0 // Move data i.e. 0 to 32 bit register EAX i.e. clear the register EAX
MOV EBX,0 // Move data i.e. 0 to 32 bit register EBX i.e. clear the register EBX
MOV AX, 0x47E3 // 16 bit data 47E3 is moved to 16 bit register AX ( 16 bit LSB's of EAX)
MOV packedData , AX // Move data of AX i..e. 47E3 to variable packedData
MOV, BX, packedData //Move data in variable packedData to register BX
AND BX, 0xE000 // perform AND operation on contents of BX i.e. 47E3 and E000 and store the result back to BX.'
So
0x47E3 = 0100 1111 1110 0011
0xE000 = 1000 0000 0000 0000
After ANDing these we get , 0000 0000 0000 0000 i.e. 0 So BX contains 0
ROL BX,4 // Rotate the contents of BX by 4 bits to left. After rotating we get 0000 0000 0000 0000 i.e. again 0. So BX contains 0.
MOV unpackedData,BX // Mov data of BX i.e. 0 to variable unpackedData.
Finally, unpackedData contains 0.
Designing a mask for bit manipulation allows us to clear, set, invert, and extract the selected...
Need help on Assembly language 1.Solve the following conditions: A. Suppose AL contains 11001011 and CF = 1. Give the new contents of AL after each of the following instructions is executed. Assume the above initial conditions for each part of this question. a. SHL AL,1 b. SHR AL,1 c. ROL AL,2 d. ROR AL,3 e. SAR AL,2 f. RCL AL,1 g. RCR AL,3 B. Suppose EAX contain ABCDH. Show the contents of BX and CX after...