Must use these registers for the problem but not all of them just try to get the result of EAX is the same as my screenshoot: OFFSET, PTR, TYPE, ESI, EAX, EBX, MOV, ADD, SUB, INC.
- Project DescriptionWrite a program that calculates the following expression: total = (num3 + num4) – (num1 + num2) + 1
- Include the following items in the program header:DescriptionStudent NameCourse NumberProject NumberDate
- Use the following settings:32-bit processorprotected mode and standard call convention4096-byte stackExitProcess prototype with a parameter
- Create an array of 16-bit signed integers: 1000h, 2000h, 3000h, and 4000h.
- Define data labels: num1, num2, num3, and num4 which are initialized with 1, 2, 4, and 8, respectively.
- Define another uninitialized variable named total.
- Add each array element value to each data label and store its sum in that variable.
- Calculate the expression using the following directives, registers, and instructions: OFFSET, PTR, TYPE, ESI, EAX, EBX, MOV, ADD, SUB, and INC.
- Save the result in total.
- Place comments in your code where needed.
- Run your program and verify the content of EAX for the correct result.