The ARM’s r13 and r14 registers are overlapped (banked or windowed) and a separate register pair exists for each of the exception modes. What do we mean when we say these registers are overlapped? Explain why the ARM’s designers have taken this approach.

What will be an ideal response?


Registers are overlapped or windowed when they have the same address or location or name. In the case of the ARM processor, there are multiple r13 registers. Each is associated with a different operating mode or state of the ARM. If you are in the user state you have a user state r13. If you switch to the supervisor state (caused by an exception) you have a new r13 (sometimes written r13_svc). Executing ADD r1,r1,r13 in the user state may give a different result to executing ADD r1,r1,r13 in the supervisor state because the two r13s may have different contents.

The reason that registers are banked is efficiency. If you jump to an exception state in order to deal with an exception, error, or operating system function, it is necessary to save any user state registers before re?using these registers. By means of banking or register overlapping you can save time by not having to save a banked register.

Computer Science & Information Technology

You might also like to view...

a binary search is used to search for the number 4 in the 11-element array shown here int A[] = {1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 17}; which value will the 4 be compared to first?

A) 1 B) 7 C) 8 D) 9 E) 51

Computer Science & Information Technology

To clear formatting, click the Clear Table command at the bottom of the ____ gallery.

A. Table Styles B. Table Formatting C. Text Direction D. Print

Computer Science & Information Technology

Match the following keyboard shortcuts or keystrokes to their task

I. F5 II. Alt + F5 III. Tab IV. Esc V. Ctrl + E A. Displays in Presenter View B. Displays a presentation from the beginning C. Centers text in a placeholder D. Ends a slide show E. Indents to the next bullet level

Computer Science & Information Technology

Should a user be allowed to enter null values for the primary key?

What will be an ideal response?

Computer Science & Information Technology