Answer and Explanation:
A. To translate the above algorithm to machine language, we first assign have to perform the first part of the operation which is x-y and set the value to the v variable. The x, y and v values are stored in memory location 202, 203 and 200 respectively.
The z value in the memory location 204 is then added to the v value in memory location 200. The first code sequence is stored in memory location 50 and the second code sequence to achieve x+y-z stored in v is stored in memory location 51(as asummed in question)
B. In the second algorithm, we add value in w which is in memory location 201 to value in x in memory location 202 and assign the result to v in memory location 200. The same is done for y+z in memory locations 203 and 204 respectively with result stored in w. We then subtract the values in v in memory location 200 from w and assign the value to v in memory location 200
C. in the first memory location 50, the code sequence v compared to w is stored. If v(stored in memory location 201)is greater than or equal to w(in memory location 202), it moves to address 54 and assigns the y value to x in memory locations 203 and 202 respectively else it assigns z valuein memory 204 to x value in 202 and jumps to next instruction
D. In this algorithm, it first compares y and z in memory locations 203 and 204 respectively in the first code sequence memory 50. In 51, it checks to see if the condition is satisfied and if it is, it jumps to address 53 and adds y and w in their various memory locations and stores it in memory 203 in y otherwise it moves to address 57. Now to get y+w+z, It then adds y +w in memory location 203 in y to z in memory location 204 and then stores the result in y. Subsequently it adds the z value to v and stores the result in v and moves to address 50 where it compares a new set of value as in a loop in the algorithm which continues till the "while" condition can no longer be satisfied.