Question: Write an assembly code to right shift a given number by 4 bits for positive 2s complement number. Right shift by 4 bits on a

Write an assembly code to right shift a given number by 4 bits for positive 2s complement number. Right shift by 4 bits on a binary string (say 00110011), will shift bits to right, appending 0 to the left at every shift(00000011). The program should take in a 16-bit positive value at memory location Loc1. Store the 16-bit result in Loc2. You can declare the memory locations Loc1 and Loc2 using .BLKW directive. For example, if [Loc1]=0x00A0 then after execution of the program [Loc2] = 0x000A. Your code should start at memory location 0x3000

(Hint: Right shift operation can be obtained if you divide the number by 2. This implementation is to be done only for positive numbers. You can create a subroutine DivideBy2 and call it 4 times to shift by 4 bits. You can come up with other methods as well but make sure to use subroutines.)

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!