/ / Programmazione: linguaggio assembly. Nozioni di base sul linguaggio assembly

Programmazione: linguaggio Assembly. Nozioni di base sul linguaggio assembly

Affinché la macchina possa eseguire i comandiuna persona a livello hardware, è necessario impostare una certa sequenza di azioni nel linguaggio di "zero e uno". L'assemblatore diventerà un assistente in questa materia. È un'utilità che funziona con la traduzione di comandi in linguaggio macchina. Tuttavia, scrivere un programma è un processo molto laborioso e complesso. Questo linguaggio non ha lo scopo di creare azioni facili e semplici. Al momento, qualsiasi linguaggio di programmazione utilizzato (Assembler funziona alla grande) consente di scrivere attività speciali efficienti che influenzano notevolmente il funzionamento dell'hardware. Lo scopo principale è creare microistruzioni e piccoli codici. Questo linguaggio offre più possibilità rispetto, ad esempio, Pascal o C.

linguaggio assembly

Una breve descrizione dei linguaggi assembler

Tutti i linguaggi di programmazione sono suddivisi in livelli:basso e alto. Qualsiasi sistema sintattico della "famiglia" di Assembler differisce in quanto riunisce subito alcuni dei vantaggi dei linguaggi più diffusi e moderni. Sono legati agli altri dal fatto che il sistema informatico può essere completamente utilizzato.

Una caratteristica distintiva del compilatore èfacilità d'uso. Questo è ciò che lo rende diverso da quelli che funzionano solo con livelli elevati. Se si prende in considerazione tale linguaggio di programmazione, Assembler è due volte più veloce e migliore. Non ci vuole troppo tempo per scrivere un programma leggero al suo interno.

Brevemente sulla struttura della lingua

Parlando in generale di lavoro e strutturail funzionamento della lingua, possiamo dire con certezza che i suoi comandi corrispondono pienamente a quelli del processore. Cioè, l'Assemblatore utilizza i codici mnemonici più convenienti da scrivere per gli esseri umani.

A differenza di altri linguaggi di programmazione,L'assemblatore utilizza etichette specifiche invece di indirizzi per scrivere posizioni di memoria. Vengono tradotti nelle cosiddette direttive con il processo di esecuzione del codice. Si tratta di indirizzi relativi che non interessano il processore (non vengono tradotti in linguaggio macchina), ma sono necessari per il riconoscimento da parte dell'ambiente di programmazione stesso.

Ogni linea del processore ha il proprio set di istruzioni. In questa situazione, qualsiasi processo sarà corretto, incluso il codice macchina tradotto.

Il linguaggio Assembly ha diverse sintassi, che saranno discusse nell'articolo.

linguaggio assembly

Vantaggi del linguaggio

L'adattamento linguistico più importante e convenienteL'assemblatore ti consentirà di scrivere qualsiasi programma per il processore su di esso, che sarà molto compatto. Se il codice risulta essere enorme, l'ambiente di programmazione reindirizza alcuni processi alla RAM. Allo stesso tempo, fanno tutto abbastanza velocemente e senza errori, a meno che, ovviamente, non siano controllati da un programmatore qualificato.

Driver, sistemi operativi, BIOS, compilatori, interpreti, ecc. Sono tutti programmi in linguaggio assembly.

Quando si utilizza un disassemblatore cheesegue la traduzione dal linguaggio macchina al linguaggio del computer, puoi facilmente capire come funziona una particolare attività di sistema, anche se non c'è una spiegazione per questo. Tuttavia, questo è possibile solo se i programmi sono leggeri. Sfortunatamente, è abbastanza difficile capire codici non banali.

Contro del linguaggio

Sfortunatamente, i programmatori alle prime armi (e spessoprofessionisti) è difficile capire la lingua. L'assemblatore richiede una descrizione dettagliata del comando richiesto. A causa della necessità di utilizzare istruzioni macchina, aumenta la probabilità di azioni errate e la complessità dell'esecuzione.

Per scrivere anche il programma più semplice, un programmatore deve essere qualificato e il suo livello di conoscenza è sufficientemente alto. Lo specialista medio, purtroppo, scrive spesso codici errati.

Se la piattaforma per la quale viene creato il programmaviene aggiornato, quindi tutti i comandi devono essere riscritti manualmente - questo è richiesto dalla lingua stessa. L'assemblatore non supporta la funzione di regolazione automatica dello stato di salute dei processi e la sostituzione di eventuali elementi.

programma in linguaggio assembly

Comandi linguistici

Come accennato in precedenza, ogni processore ha il proprio set di istruzioni. Gli elementi più semplici che vengono riconosciuti da qualsiasi tipo sono i seguenti codici:

  • Il trasferimento dei dati viene effettuato utilizzando mov, ecc.
  • Comandi relativi all'aritmetica: sub, imul, ecc.
  • Le funzioni logiche e bit per bit possono essere implementate utilizzando o, e, e così via Sono proprio queste basi di Assembly che gli consentono di essere simile ad altri.
  • Al fine di effettuare il passaggio da unocomandi a un altro, è necessario scrivere i seguenti operatori: djnz, cfsneq, cjne. A un programmatore inesperto, può sembrare che questa sia solo una raccolta di lettere, ma questo non è vero.
  • In e out sono usati quando c'è bisogno di input a (o output da) una porta.
  • I comandi di controllo includono int. Grazie a lui, puoi interrompere l'esecuzione di qualsiasi processo a favore dell'azione principale.
    programmazione del microcontrollore in linguaggio assembly

Utilizzo delle direttive

Programmazione di microcontrollori nella lingua(L'assemblatore lo consente e fa un ottimo lavoro di funzionamento) il livello più basso nella maggior parte dei casi finisce bene. È meglio utilizzare processori con risorse limitate. Per la tecnologia a 32 bit, questo linguaggio è perfetto. Spesso puoi vedere le direttive nei codici. Cos'è questo? E a cosa serve?

Innanzitutto, devi concentrarti sul fatto chele direttive non sono tradotte in linguaggio macchina. Governano come funziona il compilatore. A differenza dei comandi, questi parametri, avendo funzioni diverse, differiscono non a causa di processori diversi, ma a causa di un diverso traduttore. Tra le principali direttive ci sono le seguenti:

  • Macro ben note.
  • Ci sono anche direttive che possiede la lingua superiore. L'assembler li "legge" perfettamente e li esegue.
  • Funzioni di controllo e gestione delle modalità del compilatore.
  • Riconoscimento di costanti e variabili.
  • Regolazione del lavoro dei programmi che si trovano nella RAM.
    linguaggio assembly del codice macchina

Origine del nome

Grazie a cui la lingua ha preso il nome -"Assemblatore"? Stiamo parlando di un traduttore e di un compilatore, che crittografano i dati. In inglese, Assembler non significa altro che un assemblatore. Il programma non è stato assemblato manualmente, è stata utilizzata una struttura automatica. Inoltre, al momento, la differenza tra i termini è già scomparsa da utenti e specialisti. Il linguaggio assembly viene spesso definito linguaggi di programmazione, sebbene sia solo un'utilità.

A causa del nome collettivo generalmente accettato peralcune persone pensano erroneamente che esista un'unica lingua di basso livello (o norme standard per essa). Affinché il programmatore possa capire di quale struttura stiamo parlando, è necessario chiarire per quale piattaforma viene utilizzato questo o quel linguaggio Assembly.

nozioni di base sul linguaggio assembly

Strumenti macro

Linguaggi assembly creati in modo relativorecentemente, hanno fondi macro. Rendono il programma più facile da scrivere ed eseguire. A causa della loro presenza, il traduttore esegue il codice scritto molte volte più velocemente. Quando crei una selezione condizionale, puoi scrivere un enorme blocco di comandi, ma è più facile usare gli strumenti macro. Ti permetteranno di passare rapidamente da un'azione all'altra in caso di adempimento di una condizione o inadempimento.

Quando si utilizzano le direttive del linguaggio macro, il programmatoreottiene le macro dell'assembler. A volte può essere ampiamente utilizzato e talvolta la sua funzionalità è ridotta a un comando. La loro presenza nel codice facilita il lavoro, lo rende più chiaro e intuitivo. Tuttavia, dovresti comunque stare attento: in alcuni casi, le macro, al contrario, peggiorano la situazione.

piaciuto:
0
Post popolari
Sviluppo spirituale
cibo
y