Instructieset van IBM 360: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
Inleiding toegevoegd.
kGeen bewerkingssamenvatting
Regel 1:
Computerprogramma's worden meestal in een hogere programmeertaal geschreven. menMen spreekspreekt van de broncode. Een speciaal programma, compiler genaamd, maakt programma's gereed voor uitvoering door de hardware van de machine. Gecompileerde programma's bestaan (evenals broncode) uit een reeks opdrachten, maar deze opdrachten, instructies genaamd, zijn nu geoptimaliseerd voor verwerking door de hardware, en ze zijn veelal minder krachtig. Een optelling wordt bij voorbeeld ontleed in het ophalen van de gegevens, de eigenlijke optelling, en het weer opslaan daarvan.
 
De instructies van Systeem/360 zijn 2, 4 of 6 bytes lang. Geheugenadressen zijn alleen al vier bytes lang, zodat er behoefte is aan afkorting. Die wordt gerealiseerd door adressen op te bouwen uit de verwijzing naar een register, de "base", en een "displacement", ook "offset" genoemd. Om de 16 "general purpose" registers te onderscheiden zijn slechts 4 bits nodig, voor de "displacement" worden 12 bits gebruikt (zodat de maximale waarde 4095 is). Zo kunnen met 16 bits adressen tot 32 bits worden opgebouwd. Soms worden voor adressen ook twee registers gebruikt: plusbase heten displacementindex. Eén register (de index) kan dan bijv. gebruikt worden om een tabel te doorlopen.
 
Systeem/360 machines (en hun opvolgers) kennen een "problem state" en een "supervisor state". De "problem state" is geen probleem, maar doelt op "probleem" in de zin van "vraagstuk". Sommige "gevaarlijke" instructies (gepriviligeerde instructies) zijn slechts beschikbaar in "supervisor state". Het is de bedoeling dat een gewoon toepassingsprogramma zichzelf niet in supervisor state kan brengen, al zijn er hackers die dat proberen. Het is de bedoeling dat alleen het besturingssysteem gepriviligeerde instructies uitvoert, maar een toepassingsprogramma kan daar wel om vragen met een "supervisor call" instructie, die echter slechts effect heeft na goedkeuring van het besturingssysteem. Zo kan het ene programma normaal gesproken het andere niet beëindigen