
(5 points) Write an assembly program to compute the following expressions: - Create a DWORD array named ' z ' of length 3 using DUP operator. Leave the array ' z ' uninitialized. Let's refer to the items in the array as [z0?,z1?,z2?], where z0? is the first item, z1? is the second item, z2? is the third item. - Update each array item using the following expressions. z0?=x+y+rz1?=z0?+(y?r)z2?=zo?+(z1?+y)? - Where x,y,r are 16 -bit integer memory variables. ?x=10,y=15,r=4 - Use mov, movzx, movsx, add, sub instructions only. - Do not alter the value of x,y and r during the computation. Transfer them to appropriate registers to do computation. - At the end, open the memory window to see the variable z is stored in memory (little endian format). - Instructions for how to access the memory window are attached at the end of this document. - Use the debugger to verify your answer. - Pay special attention to the red instructions. ? Submit the following: - Screenshot of the code and memory window showing the content of the variable z (remember, it will appear in little endian format in memory).