Codul wikipedia nativ

Codul wikipedia nativ

programator Memo V. M. Kazakova (Institutul de Calcul Centrul "Energosetproject"). 60 de ani. Digital (mașină) cod, "Minsk-22".

Codul mașinii (orientat către platforma de cod), limbaj mașină - setul de instrucțiuni (un set de Opcodes) calculator specifice. care este interpretat în mod direct de către CPU sau firmware-ul calculatorului. [1]

program de calculator. scris în limbaj mașină este format din instrucțiuni mașină. fiecare dintre care este reprezentat în cod mașină ca t. n. opcod - cod binar o operațiune separată de sistemul de comandă mașini. Pentru ușurința de programare în loc de Opcodes numerice, care înțelege doar procesorul utilizează de obicei mnemonice lor scrisoare condiționale. Un set de mnemotehnici, împreună cu unele caracteristici suplimentare, numit limbaj de asamblare.

Fiecare model de procesor are propriul set de instrucțiuni, deși multe modele ale acestor seturi de instrucțiuni se suprapun puternic. Ei spun că procesorul Asovmestim cu procesorul în cazul în care procesorul B. Un complet „înțelege“ codul mașină al procesorului CPU B. Dacă A și B sunt un subset al instrucțiunilor prin care acestea sunt compatibile reciproc, se spune că acestea sunt aceleași „arhitectura“ (au aceeași arhitectură set de instrucțiuni).

instrucțiune mașină de [| ]

Tranzacțiile înregistrate într-o singură instrucțiune mașină, pot fi împărțite în (operații elementare) „simple“ și „complex“. În plus, cele mai multe procesoare moderne este format din „servomotoare“ individuale - unități de calcul, care sunt capabile de a efectua doar un set limitat de operațiuni foarte simple. În executarea unei alte unități speciale de instrucțiuni procesor - Decodor - radiodifuziune (decodifică), acesta la succesiunea operațiilor elementare actuatori specifice care pot fi citite.

Set instrucțiuni procesor Arhitectura determină ce operații se poate efectua și o instrucțiune mașină care Opcodes numerice (Opcodes) meci. Opcodes sunt de lungime constantă (y RISC -, MISC -arhitektur) și gama (-arhitektur CISC y; de exemplu: instrucțiuni arhitectura x86 are o lungime de la 8 la 120 de biți).

procesoare superscalare moderne se pot executa mai multe instrucțiuni într-un singur ciclu mașină.

Codul de aparat ca limbaj de programare [| ]

Codul de mașină poate fi privit ca un limbaj de programare primitiv sau cel mai scăzut nivel de reprezentare a software-ului compilat sau asambla. Deși este posibil să se creeze programe direct în cod mașină, acum se face foarte rar, datorită caracterului voluminos de cod și consumatoare de timp resursele de procesare manuală, cu excepția situațiilor în care necesită optimizare extremă. Prin urmare, marea majoritate a programelor scrise în limbaje de nivel superior și tradus în nativ compilatoare de cod. Codul de Masina este uneori denumit cod nativ (proprii, de asemenea, sau un cod nativ -. Din codul nativ de limba engleză), atunci când vorbesc despre piese specifice platformei ale limbii, sau biblioteci. [2]

Programul în limbi interpretate (cum ar fi de bază sau Python) nu sunt traduse în cod mașină; în schimb, acestea sunt fie executate direct de către interpret limba sau traduse în pseudo-cod (bytecode). Cu toate acestea, interpreții acestor limbi (care la rândul lor pot fi considerate ca procesoare) sunt de obicei prezentate în codul nativ.

Microcod [| ]

În unele arhitecturi de calculatoare cod suport mașină este implementat chiar mai mult strat de software de nivel scăzut, numit firmware. Acest lucru vă permite să oferiți o singură limbă mașină de interfață de întreaga linie sau o familie de computere care pot avea diferențe structurale semnificative între ele, și facilitează transferul de programe în cod mașină între diferite modele de calculatoare. Un exemplu al acestei abordări este familia calculatoarelor IBM System / 360 și succesorii lor: în ciuda diferite lățime de autobuz de la 8 biți la 64 sau mai mare, cu toate acestea, ele au un nivel de arhitectură comună limbaj mașină.

Utilizarea stratului de microcod pentru a pune în aplicare emulator permite computerului pentru a reprezenta arhitectura unui calculator complet diferit. În linia a sistemului / 360 este utilizat pentru a transfera programele de mașini IBM pentru mai devreme pentru noua familie - de exemplu, IBM 1401/1440/1460 emulator pe IBM S / 360 modelul 40.

Codul absolut și independent de poziție [| ]

Poziția-independentă de cod (în engleză cod independent de poziție.) - un program care poate fi plasat în orice zonă de memorie, deoarece toate referințele de memorie în raport cu ei (de exemplu, în ceea ce privește instrucțiunea contra). Un astfel de program poate fi mutat într-o altă zonă de memorie, în orice moment, în contrast cu programul de mutat. care, deși poate fi încărcat în orice zonă de memorie, dar după încărcare trebuie să rămână în același loc. [1]

Programul «Bună ziua, lume!» [| ]

Emisiunea «Bună ziua, lume! „Pentru arhitectura de procesor x86 după cum urmează (în notație hexazecimală) (sistem de operare MS DOS folosind ieșire BIOS întrerupe int 10h.):

BB 11 ianuarie B9 0D B4 0E 8A 00 07 43 CD 10 E2 F9 CD 20 48 65 6E 6C 6C 2C 20 57 6F 72 6C 64 21

Acest program funcționează cu plasarea acestuia la offset-ul 10016. instrucțiuni separate sunt evidențiate:

  • BB 11 01. B9 0D 00. B4 0E. 8A 07 - registrele de comandă Atribuirea valorii.
  • 43 - incrementare înregistrare BX.
  • CD 10. CD 20 - software-ul de apel întrerupe 1016, și 2016.
  • E2 F9 - echipa pentru organizarea ciclului.
  • arată date de zmeură (șir de caractere «Bună ziua, lume!»).

A se vedea, de asemenea, [. | ]