8.14 Suppose A is a 10 x 10 array of (4-byte) integers, indexed from [0][0] through [9][9]. Suppose further that the address of A is currently in register r1, the value of integer i is currently in register r2, and the value of integer i is currently in register r3. Give pseudo-assembly language for a code sequence that will load the value of A[i]li] into register rl (a) assuming that A is implemented using (row-major) contiguous allocation; (b) assuming that A is implemented using row pointers. Each line of your pseudocode should correspond to a single instruction on a typical modern machine. You may use as many registers as you need. You need not preserve the values in r1, r2, and r3. You may assume that i and jare in bounds, and that addresses are 4 bytes long. Which code sequence is likely to be faster? Why?

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter12: Points, Classes, Virtual Functions And Abstract Classes
Section: Chapter Questions
Problem 19SA
icon
Related questions
Topic Video
Question
Please help me with this Principles of programming language homework question
8.14 Suppose A is a 10 x 10 array of (4-byte) integers, indexed from [0][0] through [9][9]. Suppose
further that the address of A is currently in register r1, the value of integer i is currently in register
r2, and the value of integer j is currently in register r3.
Give pseudo-assembly language for a code sequence that will load the value of A[i][j] into register
rl (a) assuming that
that
A is implemented using row pointers. Each line of your pseudocode should correspond to a single
instruction on a typical modern machine. You may use as many registers as you need. You need
not preserve the values in r1, r2, and r3. You may assume that i and jare in bounds, and that
addresses are 4 bytes long.
Which code sequence is likely to be faster? Why?
Transcribed Image Text:8.14 Suppose A is a 10 x 10 array of (4-byte) integers, indexed from [0][0] through [9][9]. Suppose further that the address of A is currently in register r1, the value of integer i is currently in register r2, and the value of integer j is currently in register r3. Give pseudo-assembly language for a code sequence that will load the value of A[i][j] into register rl (a) assuming that that A is implemented using row pointers. Each line of your pseudocode should correspond to a single instruction on a typical modern machine. You may use as many registers as you need. You need not preserve the values in r1, r2, and r3. You may assume that i and jare in bounds, and that addresses are 4 bytes long. Which code sequence is likely to be faster? Why?
Expert Solution
steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Instruction Format
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning