Instructieset en assembly

Welk voordeel van een vaste instructielengte is het meest passend?

  1. ADe instructiegrenzen zijn direct bekend, zodat meerdere instructies gemakkelijk tegelijk kunnen worden gedecodeerd
  2. BElke instructie wordt korter dan bij variabele lengte, dus het programma wordt altijd kleiner
  3. CHet aantal instructiesoorten kan onbeperkt worden uitgebreid
Antwoord en toelichting tonen

Antwoord: A. De instructiegrenzen zijn direct bekend, zodat meerdere instructies gemakkelijk tegelijk kunnen worden gedecodeerd

Bij een vaste lengte staat vast dat de n-de instructie op byte 4n begint, zodat meerdere instructies tegelijk kunnen worden opgehaald en parallel gedecodeerd. Dit is vooral voordelig voor superscalaire CPU's die meerdere instructies per cyclus uitgeven. Aan de andere kant kunnen veelgebruikte instructies niet korter worden weergegeven, zodat de codegrootte vaak groter is dan bij variabele lengte. De C-extensie van RISC-V compenseert deze zwakte door instructies van 16 bits toe te voegen.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Instructieset en assembly

  1. In RISC-V-instructies zijn de velden voor registers (rd, rs1, rs2) elk 5 bits. Wat is de juiste reden?
  2. De immediate van de RISC-V-instructie addi is een geheel getal met teken van 12 bits. Welk bereik kan deze immediate weergeven?
  3. Wat is de gebruikelijke methode in RISC-V om een 32-bits constante die niet in een immediate van 12 bits past (bijvoorbeeld 0x12345678) in een register te plaatsen?
  4. Wat is de juiste combinatie om in RISC-V de constante 0x12345FFF met de twee instructies lui en addi te maken?
  5. Welke werking van de RISC-V-instructie auipc (add upper immediate to PC) is juist?