Programarea în codurile mașinilor și în asamblare lingvistică - instrucțiuni de asamblare - comentarii

Unul dintre cele mai importante elemente ale acestei părți a cărții sunt exemple de programe în codurile mașinilor și în limba ASSEMBLER. În amprentele acestor programe trebuie să le folosim







numite DIRECTIVE ASSEMBLER și acum, probabil, cel mai convenabil moment pentru a da o idee despre ceea ce este.

Vom lua în considerare următoarele directive: ORG, EQU, DEFB, DEFW, DEFM și END, dar înainte de a începe să le luăm în considerare, trebuie să înțelegem ferm pentru noi înșine:

1. Directivele ASSEMBLER nu sunt instrucțiunile procesorului Z8 0 și în acest sens nu au nicio legătură cu codul mașinii Z8 0.

2. ASSEMBLER este un program care traduce (traduce) textul scris de dvs. sub forma unui mnemonic în obiect, care este un cod de mașină. Iar aceste directive ASSEMBLER sunt câteva comenzi ale programului de asamblare. Ele nu sunt traduse și nu vor intra în codul obiect, dar vă vor simplifica scrisul și cel mai important - citirea programului scris în memorie.

3. Programele ASSEMBLER sunt o mare varietate și fiecare dintre ele poate avea propriile directive. Acestea pot avea aceleași directive, dar trebuie să prezinte cerințe diferite pentru utilizarea lor. În moduri scurte, specifice pentru a utiliza directivele de asamblare trebuie să instalați în conformitate cu instrucțiunile pentru programul asamblat utilizați (de ex. EDITAS, Gens 3, 4 GENS, Zeus și așa mai departe). Și deși nu există standarde, totuși unele concepte de bază pot fi încă separate, de aceea ne vom opri aici.

10 60001 LD E, A 2 0

După cum vedeți, șirul poate

; Registrul a fost încărcat în registrul E; durata de viață a bateriei. ; Reduceți-l cu unul.

10 60001 BEGIN LD B, 0 4

20 60003 AGAIN INC HL

30 60004 DEC DE

40 60005 DJNZ, AGAIN

exemple despre modul în care sunt utilizate aceste sau alte directive ASSEMBLER și dacă aveți nevoie de exemple reale în exemple, veți obține mai târziu în următoarele capitole, unde vom discuta tehnicile practice de programare.

Deci, celulele 60016 și 60017 conțin câteva date care pot fi utilizate ulterior de program. Puteți trimite aceste date celulelor înainte de a fi compilate. Și nu trebuie să utilizați codul mașinii pentru asta. Valorile inițiale din celulele de memorie pot fi setate utilizând directivele DEFB, DEFW și DEFM.

DEFB - DEFINE BYTE - setați octetul.

Deci, DEFB specifică un singur octet (0,255). DEFW este de două octeți consecutivi (0. 65535), iar DEFM este un grup de octeți consecutivi - un mesaj text, o tabel numeric și așa mai departe.

80 60016 DEFW 5C92H

Codul literei "S" Codul literei "p" "e" "c" "t" "r"

53H 7 0H 65H 63H 7 4H 72H 75H 6DH

DEFB DEFB DEFB DEFB DEFB DEFB DEFB DEFB

îl puteți specifica prin perechi de octeți.

Dar este mai simplu și mai corect să-l întrebi ca pe un mesaj:

60135 DEFM 5370656374; "Spect"

60140 DEFM 72756D; "Rum"

Există un caz special la programarea în ASSEMBLER, când textul programului trebuie introdus și prin DEFB sau DEFM. Acesta este cazul atunci când scrieți un program pentru calculatorul încorporat. La urma urmei, programul de asamblare se poate traduce în codul de mașină ASSEMBLER, dar nu știe nimic despre codurile calculatorului și nu-și cunoaște memenica. Codul calculatorului este un caz intern "Sinclair", interpretarea acestuia







programele localizate în ROM și procesor sunt activate și codul calculatorului nu are nimic de-a face cu comenzile sale. Prin urmare, puteți introduce comenzi în calculator în programul de asamblare numai ca o secvență de octeți independenți, adică prin DEFB sau DEFM.

Noi, în prima parte a cărții, am folosit indicațiile mnemonice ale comenzilor calculatorului, cum ar fi add, stk_data s_lt etc., și le-am scris cu o mică literă, spre deosebire de instrucțiunile procesorului. Dar am făcut-o mai devreme și vom continua să o facem de dragul înțelegerii și comodității înregistrării. Programul-ASSEMBLER al unor astfel de mnemonii nu știe, nu sunt în dicționarul său.

Prin urmare, folosind DEFB, DEFW și DEFM setați valorile inițiale pentru variabilele de program, introduceți în program tabele, mesaje și alte secvențe de date, chiar și

grafice, precum și secvențe de cod pe care programul de asamblare nu le înțelege, cum ar fi comenzile ASSEMBLER.

3.5. Directive ORG, END.

Directiva END indică sfârșitul programului. Dacă se întâmplă altceva după aceasta, ASSEMBLER îl va ignora în timpul compilației.

Probabil că este doar primul care trebuie să știe despre liniile directoare ale ASSEMBLER-ului. Este nu toate directivele care pot fi întâlnite în viață, și regulile de utilizare a acestora pentru diferite -Different de asamblare, dar și de mare satisface minimum 90 la suta din are nevoie de informații dvs., iar restul trebuie să învețe din instrucțiunile de la asamblare pe care îl aveți .

Primii pași în codurile mașinii - Foarte - primul pas.

Primii pași din codurile mașinii - De ce să înveți programarea în codurile mașinilor.

Primii pași din codurile mașinii sunt arhitectura procesorului Z-80.

Forme de reprezentare a numerelor în procesor Z-80 - Sisteme numerice. Formă suplimentară binară de înregistrare. Zecimal aritmetică în termeni binari.

Comenzile aritmetice și logice - Comenzi de adăugare. Comenzi de subtragere. Comenzi de comparare. Comenzi logice.

Operațiuni de branșare - Comenzile de salt. Operațiuni într-un ciclu. Comenzile stivei. Apelarea subrutinelor.

Comenzi pentru accesarea ROM - Puncte de pornire în ROM. Descrierea calculatorului încorporat.

Comenzi pentru lucrul cu biți - Comenzi pentru mutarea, rotirea și verificarea biților.

Memorie - Instrucțiuni de procesare a blocului de memorie.

I / O - Comenzi pentru lucrul cu dispozitive externe.

Întrerupe - o descriere a sistemului de întrerupere al procesorului Z80.

Alte comenzi - o descriere a comenzilor specifice procesorului Z80.

Concluzie - sfârșitul primei părți a cărții și notele la aceasta.

Partea a II-a - "Atelierul de programare în codurile mașinilor." Introducere.

Caracteristicile procesorului Z80 - mai multe pagini ale unei scurte repetări a materialului din prima parte, o revizuire a principalelor caracteristici ale procesorului.

Extinderea sistemului de comandă al procesorului este o construcție aritmetică.

Extinderea sistemului de comandă al procesorului - construcții logice.

Extinderea sistemului de procesare a comenzilor - proiectarea transmisiei de date.

Extinderea sistemului de comandă al procesorului - structuri de ramificație.

Extinderea sistemului de comandă al procesorului - proiectarea și returnarea apelului subprogramului. Alte construcții.

Analiza programelor în codurile mașinilor - ieșire la bordura de benzi de culoare.

Analiza programelor în codurile mașinilor - ieșirea datelor pe ecran de la codul mașinii.

Analiza programelor în codurile mașinilor - gestionarea programului de la joystick-ul Kempston.

Analiza programelor în codurile mașinilor - controlați programul de la tastatură.

Analiza programelor în codurile mașinilor - verificarea memoriei RAM a calculatorului.

Analiza programelor în codurile mașinilor este o modalitate practică de a lucra cu un calculator.

Analiza programelor în codurile mașinilor este un exemplu de utilizare a întreruperilor de tipul al doilea.

Canalele și fluxurile sunt canale standard. Alte canale. Zona de informații despre canale. Conectarea firelor. Metode practice de lucru cu canale și fluxuri.

Supliment 2 - o prezentare generală a erorilor tipice care apar atunci când se programează în codurile mașinilor.

Partea a III-a - ghid de programare în codurile mașinilor. Introducere.

Sistem de comandă - un tabel rezumat al valorilor codului de la 0 la 255 pentru Basic și Assembler.

Sistemul de comandă este un tabel cu valorile codului pentru asamblare.

Tabelul 3 - sistemul de comandă al calculatorului încorporat.

Dicționar assembler mnemonics - toate mnemoniile codului mașinii procesorului Z-80 în ordine alfabetică.

Tabelul 5 - tabelul indicatorului de întrerupere de pe ROM.

Russificare - rusificare folosind simboluri UDG.

Russificare - rusificare prin înlocuirea generatorului. Russificare "sub imprimanta" și "sub mașină de scris".

Sfaturi utile - câteva recomandări practice legate de computerizarea computerului.

Concluzie - vă mulțumesc pentru atenția acordată cărții noastre. Dacă ați citit-o până la capăt și totul este clar pentru dvs., atunci ați făcut un mare pas înainte, dar totuși acesta este doar primul pas.







Trimiteți-le prietenilor: