Instructieset en assembly
Welke omschrijving van de ABI (application binary interface) is juist?
- AEen afspraak op broncodeniveau die functienamen en argumenttypen vastlegt
- BEen afspraak die alleen de soorten CPU-instructies en hun bitindeling vastlegt
- 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.