Assembler - o comandă pentru începătorii programatorilor de nivel scăzut

Toate comenzile pot fi executate numai folosind limbajul mașinii. Assembler-commands - o reprezentare simbolică a acestei limbi. Cu ajutorul său scrie programe mici, dar foarte rapide. Dar, în ciuda dimensiunii lor, procesul de scriere este foarte consumator de timp. Instrucțiuni de asamblare De aceea, comenzile de asamblare sunt folosite pentru a lucra cu componenta hardware, sau când execuția programului este critic de memorie. Prin urmare, codul de asamblare este proiectat sub formă de subrutine și este integrat cu codul de nivel înalt. Deoarece asamblorul poate fi foarte diferit în funcție de tipul de arhitectură, ar trebui să fie luat în considerare pentru un anumit caz, în acest articol este arhitectura Win. Dar descrierea comenzilor de asamblare, ca regulă, nu se schimbă prea mult și pot fi folosite atât în ​​microcontrolere, cât și în alte dispozitive electronice pentru care se folosește asamblarea.comanda de asamblare

Instrucțiuni aritmetice folosite în asamblare

În ciuda unui astfel de paradox, ca universalitate, doar 4 comenzi de asamblare aritmetice sunt și pot fi folosite de programatori. Cu toate acestea, ele au fost create de o limbaje de programare de nivel înalt, care folosesc calculatoare, electrocasnice, telefoane, telefoane inteligente, laptop-uri și așa mai departe. D. Lucrul cu ei este posibil, și destul de succes. Lista comenzilor de asamblare este după cum urmează:

  • plus;
  • scădere;
  • multiplicare;
  • diviziune.

plus

Operație aritmetică, cunoscută din școală. Pentru a le folosi, trebuie să luați în considerare numai caracteristica adunării, care este legată de reprezentarea numerelor care urmează să fie adăugate în memoria calculatorului în sine. Forma generală a operațiunii este următoarea:

ADD ,

Echipa ia numere din celule, le adaugă împreună și le scrie la "Cell1". Acum despre condițiile de operare: ambele numere din celulă trebuie să aibă aceeași dimensiune. De asemenea, dacă mai întâi există un registru, puteți adăuga totul la acesta. Dacă o celulă pleacă mai întâi, atunci operatorul imediat sau registrul pot fi adăugate la acesta.descrierea instrucțiunii de montaj

Descrierea comenzilor de asamblare și implementarea acestora necesită o abordare mai completă decât poate oferi un articol. Comenzile de asamblare, în ciuda numărului lor scăzut, scriu un număr imens de cărți care au mai mult de o sută de pagini. Prin urmare, în ciuda ușurinței aparente, vă recomandăm să vă familiarizați cu o descriere mai detaliată a muncii în echipă, care vă va permite să învățați toate nuanțele pentru arhitecturi diferite.

scădere

Această operație este executată de același algoritm ca cel precedent. Chiar și tipul de comandă al comenzii este similar:

SUB ,

instructor de instrucțiuni aritmeticePrincipiul de numărare este următorul: din numărul 1, se scade valoarea nr. 2 și se scrie în locul nr. 1. Condițiile pentru operație sunt exact aceleași ca și condițiile pentru operația de adăugare.

multiplicare

Dacă pentru divizare și adăugare s-au folosit aceleași comenzi, atât pentru numere nesemnate, cât și pentru semnale semnate, atunci pentru multiplicare și divizare există algoritmi diferiți pentru ei. Deci, pentru a multiplica numerele nesemnate, utilizați această comandă:

MUL

lista de instrucțiuni de asamblareOperandul specificat in comanda este unul dintre factorii. Locația celui de-al doilea factor și locația rezultatului operației sunt fixate în avans, în funcție de mărimea MUL în octeți. Locația lor este subiectul unui articol separat. Pentru multiplicarea semnelor, folosiți comanda:

IMUL,

Puteți găsi alte opțiuni pentru implementare, dar acesta este mai ușor de înțeles și familiarizat. Sunt indicați doi factori și rezultatul este plasat în operand # 1. În acest caz, registrul este operandul # 1, iar operandul # 2 este registrul sau locatia de memorie. Vor fi descrise și alte opțiuni:

IMUL



IMUL, ,

IMUL,

Prima opțiune este similară cu MUL în dispozitivul său, deci regulile pentru aceasta pot fi atribuite aici. A doua opțiune vă permite să specificați explicit locația - atât rezultatul, cât și multiplicatorul. A treia opțiune specifică registrul, care va fi primul factor și în care rezultatul multiplicării va fi plasat. Operandul imediat inseamna indicarea unui registru nedefinit, dar numarul prin care operandul va fi inmultit.

diviziune

După cum sa raportat mai sus, două echipe sunt folosite pentru divizare. Pentru numere nesemnate, aplicați:

DIV

Pentru numerele semnate utilizați comanda:

IDIV

Particularitatea utilizării comenzilor de divizare este că se folosește numai divizorul operand, care este registrul sau celula de memorie. Numărul divizibil are întotdeauna locația sa specifică, care depinde de mărimea numărului. Locul ei are rezultatul operațiunii.

Căutarea și determinarea locurilor se pot spune la fel ca înmulțirea: aveți nevoie de un articol separat, deoarece cantitatea de informații este foarte semnificativă.

Sfaturi utile

De asemenea, la categoria de "comenzi relativ utile de asamblare" este echipa NEG . Transcrie un caracter într-un număr care este în operand. Asta e tot, sperăm că articolul a ajutat să înțelegi comenzile artificiale de asamblare.

Operațiile de incrementare și decrementare (creșterea sau scăderea operandului cu unul) sunt, de asemenea, utile. Pentru a incrementa operandul, trebuie sa inregistrati urmatoarea comanda:

INC

Pentru decrementare este necesar să se scrie:

decembrie

O locație de memorie sau un registru poate acționa ca un operand. Beneficiul exclusiv al acestor operațiuni este acela că aceștia iau mai puțin spațiu pentru ei decât comenzile de asamblare similare oferite prin adăugarea sau scăderea.

Distribuiți pe rețelele sociale:

înrudit
Limba algoritmică școlară: scop, reguli, comenzi. Conceptul de limbaj algoritmicLimba algoritmică școlară: scop, reguli, comenzi. Conceptul de limbaj algoritmic
Programare AVR. Programarea microcontrolerelor AVR pentru incepatoriProgramare AVR. Programarea microcontrolerelor AVR pentru incepatori
Limbaj de programare JavaLimbaj de programare Java
Lista limbajelor de programare. Limbi de programare de nivel scăzut și înaltLista limbajelor de programare. Limbi de programare de nivel scăzut și înalt
Microcontrolere de programare pentru începători: ușor și accesibilMicrocontrolere de programare pentru începători: ușor și accesibil
Canapele Monaco. Instrucțiuni de asamblare - nu atât de înfricoșător!Canapele Monaco. Instrucțiuni de asamblare - nu atât de înfricoșător!
Un ciclu cu o condiție ulterioară și o buclă cu o condiție prealabilăUn ciclu cu o condiție ulterioară și o buclă cu o condiție prealabilă
Programare: limba de asamblare. Elementele de bază ale limbajului de asamblareProgramare: limba de asamblare. Elementele de bază ale limbajului de asamblare
Python pentru începătoriPython pentru începători
Ce sunt microprocesoarele? Tipuri de microprocesoareCe sunt microprocesoarele? Tipuri de microprocesoare
» » Assembler - o comandă pentru începătorii programatorilor de nivel scăzut