Instructieset en assembly

Wat is de waarde van register a2 na uitvoering van de bovenstaande RISC-V-code?

addi a0, zero, 5
addi a1, a0, 3
add  a2, a0, a1
  1. A8
  2. B13
  3. C15
Antwoord en toelichting tonen

Antwoord: B. 13

Regel 1 telt 5 op bij zero (altijd 0), dus a0 = 5; regel 2 telt 3 op bij a0, dus a1 = 8; regel 3 telt a0 en a1 op, dus a2 = 5 + 8 = 13. RISC-V-rekeninstructies worden geschreven in de volgorde „instructie bestemming, bron1, bron2 (of immediate)”, waarbij het eerste register de plaats van het resultaat is. zero is een alias van x0 en wordt vaak gebruikt om constanten te maken.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Instructieset en assembly

  1. Welke werking van de RISC-V-instructie „lw t0, 8(sp)” is juist?
  2. Hoe wordt het sprongdoel label weergegeven in de RISC-V-voorwaardelijke sprong-instructie „beq a0, a1, label”?
  3. Welk voordeel van PC-relatieve adressering voor sprongen is juist?
  4. Welke uitspraak over de instructielengte van basisinstructies van RISC-V en instructies van x86 is juist?
  5. Welk voordeel van een vaste instructielengte is het meest passend?