Instructieset en assembly

Welke omschrijving van de ABI (application binary interface) is juist?

  1. AEen afspraak op broncodeniveau die functienamen en argumenttypen vastlegt
  2. BEen afspraak die alleen de soorten CPU-instructies en hun bitindeling vastlegt
  3. CEen afspraak op machinecodeniveau om programma's aan elkaar te koppelen, zoals de aanroepconventie en de grootte en uitlijning van gegevenstypen
Antwoord en toelichting tonen

Antwoord: C. Een afspraak op machinecodeniveau om programma's aan elkaar te koppelen, zoals de aanroepconventie en de grootte en uitlijning van gegevenstypen

De ABI is een afspraak op machinecodeniveau waarmee gecompileerde programma's en bibliotheken samen kunnen werken en omvat de aanroepconventie, de grootte van int, long en pointers, de uitlijning van structuren en de manier van systeemaanroepen. De API legt in broncode vast hoe functies worden gebruikt; ook bij dezelfde API kan een bibliotheek niet worden gebruikt zonder opnieuw te bouwen als de ABI verschilt. Ook bij dezelfde RISC-V-ISA kan de ABI per OS en toepassing verschillen.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Instructieset en assembly

  1. Met welke instructie wordt een aanroep via een functiepointer in C, „(*fp)(x)”, in RISC-V gewoonlijk uitgevoerd?
  2. Welke uitspraak over twee CPU's met dezelfde instructiesetarchitectuur (ISA) is juist?
  3. Welke eigenschap van een load-store-architectuur zoals RISC-V is juist?
  4. Welke eigenschap van het RISC-V-register x0 (zero) is juist?
  5. Welke algemene gehele-getalregisters heeft RISC-V RV32I (de basisinstructieset voor gehele getallen van 32 bits)?