Question: ARM Assembly Language. Thanks in advance! 2. Write a program that fills the memory block 0x00001000 through Ox000010FF with the half- word value OXAZBC. Discussion:

 ARM Assembly Language. Thanks in advance! 2. Write a program that

ARM Assembly Language.

Thanks in advance!

2. Write a program that fills the memory block 0x00001000 through Ox000010FF with the half- word value OXAZBC. Discussion: This block is too big to code in-line. You will need to use a loop to do it. One issue, how will you know that you are done? You could set up a counter and count down to zero every time you write a value to memory. Question, how many half-words will you be writing? Otherwise, you can check the value of the pointer that you are using to point to the next memory location, then stop when it points to a memory location above 0x000010FF. Also, consider how you will increment your pointer each time. Should you increment by 4, or something else? It might help you to create a flow chart before you attempt the coding. 3. Add code to the program from problem #2 that will compare what you wrote to memory with what actually got stored in memory. Thus, after you fill memory, read each value back and see if they are the same. If so, keep going, if not, stop the program and save the address where the fault occurred. If no errors are detected, save the value OxFFFFFFFF instead. Save the address in a memory space after your program code. Use the directive, SPACE, to reserve 4 bytes to save the address value. 2. Write a program that fills the memory block 0x00001000 through Ox000010FF with the half- word value OXAZBC. Discussion: This block is too big to code in-line. You will need to use a loop to do it. One issue, how will you know that you are done? You could set up a counter and count down to zero every time you write a value to memory. Question, how many half-words will you be writing? Otherwise, you can check the value of the pointer that you are using to point to the next memory location, then stop when it points to a memory location above 0x000010FF. Also, consider how you will increment your pointer each time. Should you increment by 4, or something else? It might help you to create a flow chart before you attempt the coding. 3. Add code to the program from problem #2 that will compare what you wrote to memory with what actually got stored in memory. Thus, after you fill memory, read each value back and see if they are the same. If so, keep going, if not, stop the program and save the address where the fault occurred. If no errors are detected, save the value OxFFFFFFFF instead. Save the address in a memory space after your program code. Use the directive, SPACE, to reserve 4 bytes to save the address value

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!