x86-64 (ook bekend als AMD64) is een 64-bits uitbreiding op de x86-instructiesetarchitectuur (ISA). Het wordt niet gedefinieerd als één ding, maar eerder als een specificatie die verschillende belangrijke aspecten omvat:
* 64-bits registers: De meest opvallende verandering ten opzichte van 32-bit x86 is de uitbreiding van registers voor algemene doeleinden van 32 bits (EAX, EBX, enz.) naar 64 bits (RAX, RBX, enz.). Dit maakt directe manipulatie van grotere gegevenstypen en adressen mogelijk.
* 64-bits adressering: x86-64 ondersteunt 64-bit virtuele adressen, waardoor toegang tot aanzienlijk meer geheugen mogelijk is dan 32-bit x86 (dat beperkt is tot 4 GB). Dit is cruciaal voor moderne besturingssystemen en toepassingen die grote hoeveelheden RAM vereisen.
* Uitgebreide instructieset: Terwijl achterwaartse compatibiliteit met 32-bit x86-instructies behouden blijft, voegt x86-64 nieuwe instructies toe die zijn geoptimaliseerd voor 64-bit-bewerkingen. Deze verbeteren de prestaties en ondersteunen functies zoals grotere datastructuren.
* Registreerconventies: De manier waarop registers voor verschillende doeleinden worden gebruikt (bijvoorbeeld functieargumenten, retourwaarden, stapelaanwijzer) wordt gedefinieerd in de x86-64-architectuur. Deze conventies zorgen voor consistent gedrag bij verschillende implementaties.
* Geheugenbeheer: De specificatie schetst hoe het systeem geheugen beheert, inclusief virtueel geheugen, paging en beveiligingsmechanismen.
* Systeemaanroepen: De manier waarop applicaties met het besturingssysteem communiceren, wordt ook gedefinieerd, waardoor een consistente interface wordt geboden voor verschillende functies (zoals bestands-I/O, netwerkbewerkingen, enz.).
In wezen is x86-64 een uitgebreide specificatie die een complete 64-bit computeromgeving definieert die is gebouwd op de bestaande x86-architectuur, maar deze aanzienlijk uitbreidt. Het is geen functie in één taal, maar een fundament waarop besturingssystemen, compilers en applicaties zijn gebouwd. De feitelijke *implementatie* van deze architectuur wordt gedaan door hardwarefabrikanten (zoals Intel en AMD). |