Top 10k strings from asmdoc.doc
in <root> / doc / technical / specifications / CPMDOC.zip /
Back to the directory listing
20 Ghid de utilizare asamblor ASM 20 3 L ! ! ! ! ! ! ! ! ! ! ! R 2 unitatea specificata) 2 Times New Roman 2 - numele unitatii de disc pe care se va genera 2 - litera "Z" care indica faptul ca se solicita 1 zii instructiunii fiind implicit inlocuiti 1 zecimal (D) sau hexazecimal (H). Orice constanta 1 zator in program, sau 1 za fisierul listing (astfel, nu este obligatoriu sa se listeze 1 vor fi asamblate. Daca valoarea rezultata este zero, atunci 1 vele EQU sau SET. 1 valorile corespunzatoare expresiilor "exp(1)",..."exp(n)" 1 va produce un mesaj de eroare, intrucit valoarea 0FFFFH nu poate 1 unde instr(i) contine: 1 unde exp(i) este o expresie a carei valoare incape pe 8 biti 1 unde c(i) sint cifre apartinind bazei de numaratie "b", 1 unde "eticheta" este un sir de maximum 16 caractere alfanumerice, 1 unde "exp(i)" este o expresie a carei valoare incape pe 16 1 tiv (operan 1 tine si caracterul "$", care nu este tratat de ASM (il ignora), 1 timpul asamblarii. 1 terului ";" si care se termina la sfirsitul liniei curente 1 terul ' poate apare intr-o constan 1 terul "!"). Acest cimp este citit de asamblor, este listat in 1 tea specificata si sa produca la iesire: 1 tata pe 16 biti. Daca reprezentarea constantei 1 ta (literele B, O, Q, D sau H). In absenta lui "b", 1 ta sir prin dublarea lui. Valoarea unui caracter 1 ta binara, 1 suprimarea generarii fisierului listing. 1 suprimarea generarii fisierului cod-obiect. 1 sub un nume egal cu "nume-fisier" si cu extensie standard ".ASM". 1 sub CP/M egala cu 100H care reprezinta inceputul zonei TPA). 1 structiunea/directiva 1 stantelor se pot folosi caracterele "$" 1 specificat. 1 spatiul-disc si reluat procesul de asamblare). 1 siilor "exp(1)",..."exp(n)" pe cite doi octeti fiecare. 1 sie este utilizata intr-o instructiune ADI, atunci primii 8 1 si operatori. Expresiile sint evaluate de asamblor in timpul 1 si care trateaza fisiere sursa in limbaj de asamblare rezi 1 sfirsit logic de linie (sfirsit de 1 seste 16 biti, automat se trun 1 se fisierele care nu mai sint utile si apoi reape 1 se considera "b"="D". O constanta hexa trebuie sa 1 scrisa pe o singura linie (fizica !) si sa aiba maximum 1 sarea la stinga a valorii "a" cu 1 rului nu este ASM. 1 rele apostrof ('). O constanta sir trebuie sa fie 1 rea la dreapta a valorii "a" cu "b" 1 ranzi (etichete, constante numerice, cuvinte rezervate sau siruri 1 ramase libere se completeaza impli 1 rale sau coduri de 1 racterul $ trebuie sa apara separat prin 1 programului sursa. 1 programului (aceasta "adresa" va fi inscrisa in ultima 1 procesului de asamblare ca valori pe 16 biti. 1 prin directiva SET pina in momentul in care i se va atribui 1 pozitii binare (pozitiile ramase 1 pe disc, in urma procesului de asamblare rezultind un fisier cod- 1 pe cite un octet fiecare. "Exp(i)" pot fi si constante-sir, 1 pasi succesivi de parcurgere de catre asamblor a 1 parametrul p1 si sa genereze sau nu fisierele cod-obiect/listing, 1 p3 - poate fi: 1 p2 si p3. Semnificatia parametrilor este: 1 p2 - poate fi: 1 p1 - poate fi o litera (A - P), care indica numele unitatii 1 ordinea: * / MOD SHL SHR - + NOT AND OR XOR 1 operator utilizare semnificatie 1 operanzilor implicati in instructiuni. Daca, de exemplu, o 1 octeti (cu "n" egal cu valoarea expresiei). 1 obtinerea fisierului listing la consola; 1 obiect (cod-masina 8080) in format hexa (compatibil INTEL) si un 1 o noua valoare, printr-o alta directiva SET. 1 numerica reprezinta o valoare pe 16 biti. 1 numele fisierului sursa specificat in comanda este ero 1 nume-fisier.PRN (pe discul instalat sau pe 1 nume-fisier.HEX (pe discul instalat sau pe 1 nume$lung sau data$foarte$lunga). 1 numar-linie eticheta cod-operatie operand ;comentariu 1 nu poate fi plasat in zona de date specificata. 1 nr.linie eticheta instr(1) ! instr(2) ! . . . instr(n) (CR)(LF) 1 nat (de exemplu contine caracterul "?" sau "*"). 1 narea executiei programului ASM. 1 n vor fi ignorate de asamblor 1 mata constan 1 ma este de 2 caractere. 1 lui "b" (toti bitii "0" din "b" 1 logici: NOT AND OR XOR SHL SHR 1 listing. Ele apar tiparite si la consola, pe masura ce se gene 1 listing) nu pot fi scrise pe disc (in majoritatea 1 linie sursa n 1 linie sursa 2 1 linie sursa 1 1 libere se completeaza cu zerouri). 1 lat asamblorul. 1 la care asamblorul va genera cod-obiect); 1 instructiunile din liniile 1 1 instructiuni 8080 cu valoare asociata 1 instructiuni masina care au valori prestabilite. 1 instructiune). 1 inregistrare a fisierului hexa generat de asamblor). Daca 1 indica sfirsitul unui program sursa in limbaj de asamblare 1 incorect construit. 1 inceapa intotdeauna cu o cifra. Orice constanta este 1 in functie de optiunea utilizatorului, exprimata prin parametrii 1 in comanda, este fie incorect introdus fie tipul fisie 1 iar "b" reprezinta baza in care este expri 1 generarea codului obiect in fisierul B:PROG.HEX si listare pe 1 formatul general, sau toate aceste elemente. 1 formata de asamblor intr-o constan 1 fisierul: nume-fisier.ASM aflat pe discul instalat sau pe unita 1 fisierul: nume-fisier.ASM aflat pe unitatea specificata prin 1 fisierul/fisierele de iesire (cod-obiect si/sau 1 fisierul sursa specificat in comanda nu poate fi citit 1 fisierul listing dar nu este interpretat de asamblor. 1 fisierul listing (A - P); 1 fisierul de iesire nu poate fi inchis: trebuie verifi 1 fisierul cod-obiect (A - P); 1 fisierul listing pentru aflarea eventualelor erori in programul 1 fisierul "director" al discului este plin; trebuie 1 fisier listing. 1 fi reprezentata pe 8 biti, in timp ce instructiunea: 1 fel cu MVI A,40H). 1 expresiei. 1 executie" a programului va fi 0000H. 1 executie a programului); 1 evalueaza "expresie" si atribuie aceasta valoare simbolului 1 evalueaza "expresie" si rezerva o zona de memorie de "n" 1 evalueaza "expresie" si daca valoarea rezultata este 1 evalueaza "expresie" si atribuie valoarea simbolului 1 evaluata (trebuie simplificata !). 1 evaluata si va reprezenta "adresa de lansare in executie" a 1 etichete carora li s-au atribuit valori prin directi 1 eticheta in programul respectiv. 1 eticheta SET expresie 1 eticheta EQU expresie 1 este compatibila cu tipul de instructiune. 1 este acceptata de ASM, intrucit anuleaza primii 8 biti ai 1 eroarea. 1 ele prin caracterul "!". Este deci, acceptata forma gene 1 el folosind doar pentru cresterea lizibilitatii etichetelor 1 egali cu zero. Astfel, instructiunea: 1 egala cu valoarea expresiei (de obicei aceasta valoare este 1 dintr-un sir este egala cu codul ASCII corespunzator 1 dintr-o succesiune de linii sursa care au formatul gene 1 diferita de zero, atunci instructiunile din liniile 1 1 devin "1" si toti bitii "1" din "b" 1 devin "0") 1 determina generarea codului obiect incepind de la adresa 1 de disc pe care se gaseste fisierul sursa. 1 de apel al asamblorului. Aceste mesaje de eroare sint: 1 de 1 sau 2 caractere ASCII) sau subexpresii incluse intre paran 1 dar nu este tratata de catre acesta (este neimplementa 1 cuvinte rezervate 1 curenta. Ca 1 cu valoarea 0 (zero)). (ex: MVI A,MOV se asambleaza la 1 cu primul caracter obligatoriu alfabetic. Acest cimp poate con 1 cu lungime maxima de 64 caractere. Fiecare caracter din 1 corect de catre asamblor; trebuie utilizata comanda 1 contine una sau mai multe instructiuni/directive, separate intre 1 context (poate fi eticheta dubla). 1 constante sir 1 constante numerice 1 constanta-sir va fi generata pe cite un octet (in cod ASCII). 1 consola. 1 considerata "linie comentariu" si nu este tratata de asam 1 comenzile: 1 cod-operatie operanzi [ ;comentariu ] 1 cit cu zerouri). 1 chiaza la dreapta. 1 cere asamblarea programului aflat in fisierul sursa B:PROG.ASM, 1 cazurilor din lipsa de spatiu-disc; trebuie eliberat 1 cat daca exista disc in unitate si daca acesta nu este 1 c1c2...cnb 1 blare (si optional, adresa de lansare automata in 1 blancuri de identificatorii din context. 1 biti. Directiva genereaza valorile corespunzatoare expre 1 biti ai valorii expresiei (cei mai semnificativi) trebuie sa fie 1 asamblorului ASM. Directivele acceptate de ASM sint: 1 asamblorul nu poate sa gaseasca fisierul sursa 1 asamblor). Daca "expresie" este prezenta, atunci ea va fi 1 aritmetici: + - * / MOD ( ) + (unar) - (unar) 1 a+b*c = a+(b*c) 1 a*b+c = (a*b)+c 1 a lui "a" la "b" 1 a directivelor acceptate de asamblorul ASM. 1 a OR b AND NOT c+d SHL e = a OR (b AND (not (c+(d SHL e)))) 1 a MOD b*c SHL d = ((a MOD b)*c) SHL d 1 [eticheta] ORG expresie 1 [eticheta] END [expresie] 1 [eticheta] DW exp(1),...exp(n) 1 [eticheta] DS expresie 1 [eticheta] DB exp(1),...exp(n) 1 ZapfDingbats 1 ZapfChancery 1 XOR a XOR b "sau-exclusiv"logic intre "a"si"b" 1 Valoarea calculata a unei expresii trebuie sa corespunda lungimii 1 V eroare de valoare: operandul intilnit in expresie este 1 Un program in limbaj de asamblare, acceptat de ASM, este alcatuit 1 U eticheta nedefinita: specificatorul fisierului sursa, 1 TYPE pentru a determina locul din fisier in care apare 1 Semnificatia acestor operatori este: 1 SUB RAL DCR 1 STAX DAD ANI 1 STA NOP ORI 1 SPHL STC 1 SP cu valoare asociata 6 1 SOURCE FILE READ ERROR 1 SOURCE FILE NAME ERROR 1 SHR a SHR b valoarea care rezulta prin deplasa 1 SHLD HLT XRI 1 SHL a SHL b valoarea care rezulta prin depla 1 SET atribuie valori temporare unui simbol; 1 SBB RAR DCX 1 S eroare de sintaxa: expresia este incorect construita. 1 R/O; aceasta este o eroare fatala care determina termi 1 R eroare de registru: valoarea specificata ca registru nu 1 PSW cu valoare asociata 6 1 P eroare de faza: eticheta nu are aceeasi valoare in doi 1 Orice constanta numerica se scrie sub forma: 1 Operatorii pot fi: 1 Operanzii pot fi: 1 OUTPUT FILE WRITE ERROR 1 ORG stabileste originea programului (adresa incepind de 1 OR a OR b "sau" logic intre "a" si "b" 1 O linie care incepe cu caracterul ";" sau "*" in coloana 1 este 1 O linie poate contine oricare din elementele specificate in 1 O depasire: expresia este prea complexa pentru a putea fi 1 NewCenturySchlbk 1 NOT NOT b complementul fata de 1 al valorii 1 NO SOURCE FILE PRESENT 1 NO DIRECTORY SPACE 1 N neimplementat: directiva este recunoscuta de asamblor 1 MVI PUSH XCHG 1 MS LineDraw 1 MOV POP DAA 1 MOD a MOD b restul impartirii intregi a lui 1 MNEMONICE 8080 1 M cu valoare asociata 6 1 Lansarea in executie a programului ASM se face prin una din 1 LXI XTHL CMA 1 LHLD OUT ACI 1 LDAX IN ADI 1 LDA EI SUI 1 L cu valoare asociata 5 1 L eticheta eronata: eticheta nu poate apare in acest 1 JZ CZ RZ 1 JPO CPO RPO 1 JPE CPE RPE 1 JP CP RP 1 JNZ CNZ RNZ 1 JNC CNC RNC 1 JMP CALL RET 1 JM CM RM 1 JC CC RC 1 In scrierea con 1 In ambele cazuri, programul ASM presupune ca fisierul de asamblat 1 In ANEXA 1 este prezentata lista completa a mnemonicelor 8080 si 1 In fiecare din cazurile prezentate, "a" si "b" reprezinta ope 1 IF directiva pentru asamblare conditionata; 1 IF expresie 1 Helvetica-Condensed 1 H cu valoare asociata 4 1 Forma (2) precizeaza ca asamblorul va trata ca fisier sursa 1 Forma (1) precizeaza ca asamblorul va trata ca fisier sursa 1 Fiecare linie se termina prin caracterele (CR)(LF). O linie poate 1 Evaluarile tuturor expresiilor se realizeaza in faza de asamblare 1 Evaluarea expresiilor se face astfel: 1 Este un cimp optional, care are forma: 1 Este un cimp optional ce reprezinta numarul liniei sursa 1 Erorile sint semnalate prin urmatoarele coduri: 1 Erorile detectate de asamblor apar in prima coloana a fisie 1 EQU atribuie valori unui simbol; 1 ENDIF sfirsit asamblare conditionata; 1 END indica sfirsitul unui program sursa in limbaj de asam 1 E cu valoare asociata 3 1 E eroare de expresie: expresia nu poate fi evaluata in 1 Default Paragraph Font 1 De exemplu comanda: 1 Daca eticheta exista, ii atribuie valoarea "expresiei". 1 Daca "exp(i)" este o constanta-sir, atunci lungimea ei maxi 1 DW generare date de lungime egala cu doi octeti fiecare; 1 DS rezerva o zona de memorie. 1 DIRECTIVE ACCEPTATE DE ASM 1 DI SBI 1 DB generare date de lungime egala cu un octet fiecare; 1 D cu valoare asociata 2 1 D eroare de data: un element din datele instructiunii 1 Courier New 1 Caracterul "!" este tratat de catre ASM drept 1 CANNOT CLOSE FILE 1 C cu valoare asociata 1 1 B cu valoare asociata 0 1 AvantGarde 1 Astfel, exista urmatoarele cuvinte rezervate: 1 Asamblorul ASM semnaleaza erori, datorate unor comenzi inco 1 Acest cimp contine, in general, expresii alcatuite din ope 1 Acest cimp poate contine o mnemonica 8080 sau o directiva a 1 Acest cimp contine orice sir de caractere care urmeaza carac 1 ATranslated by WordPort from WordStar 3.x, 4.0 document asmdoc.txt 1 ASM PROG.BBX(CR) 1 ASM este un asamblor care lucreaza sub sistemul de operare CP/M 1 AND a AND b "si"logic intre "a" si "b" 1 ADI (-1) AND 0FFH 1 ADI -1 1 ADD RLC INR 1 ADC RRC INX 1 A N E X A 1 1 A cu valoare asociata 7 1 64 caractere. Carac 1 3. MESAJE DE EROARE ASM 1 2.5 CIMPUL "comentariu" 1 2.4.2 Operatori 1 2.4.1 Operanzi 1 2.4 CIMPUL "operand" 1 2.3 CIMPUL "cod operatie" 1 2.2 CIMPUL "eticheta" 1 2.1 CIMPUL "numar linie" 1 2. FORMATUL FISIERULUI SURSA 1 10+20 10H+37Q A1/3 (A2+4) SHR 3 ('A' AND 5FH)+'0' 1 1. PREZENTARE GENERALA 1 1), adica rezulta valoarea 0FFFFH. 1 / a / b impartire intreaga (fara semn) 1 --------------- --------------- -------------- 1 -------------- ---------------- ------------- 1 ------------- --------------- -------------- 1 - sint siruri de caractere ASCII incluse intre caracte 1 - pot fi etichete definite de utili 1 - pot fi exprimate in binar (B), octal (O sau Q), 1 - litera "X" care indica faptul ca se solicita 1 - intii parantezele cele mai interioare 1 - codul-masina corespunzator tipului instructiune respec 1 - apoi,in cadrul unei paranteze sau in absenta acestora, in 1 - adresa la care va fi generata in 1 - acestea sint nume de registre gene 1 - (unar) - b identic cu "0 - b" 1 - a - b scadere fara semn a lui "b" din "a" 1 + (unar) + b identic cu "b" 1 + a + b adunare fara semn a lui "a" cu "b" 1 * a * b inmultire fara semn a lui "a" cu "b" 1 (valoarea expresiei are primii 8 biti nuli) si genereaza 1 (nu se va genera cod pentru ele). 1 (liniile aflate dupa aceasta directiva nu vor fi tratate de 1 (ignorate de asamblor) pentru a creste lizibilitatea 1 (fisier sursa in limbaj de asamblare 8080) se gaseste pe disc, 1 (exprimat in zecimal). Asamblorul ignora acest cimp. 1 (ex: 33$FF$44H). 1 (caracterele (CR)(LF)) sau la sfirsitul logic al liniei (carac 1 (ca operatii pe 16 biti fara semn). Astfel, (-1) este evaluat ca 1 (a OR b) AND (not c)+d SHL e = (a OR b) AND ((NOT c)+(d SHL e)) 1 (2) fisierul listing: 1 (2) eticheta: 1 (2) ASM nume-fisier.p1p2p3(CR) 1 (1) fisierul cod obiect (format hexa): 1 (1) eticheta 1 (1) ASM [nume-unitate]nume-fisier(CR) 1 ('B'+B) OR (PSW+M) (1+(2+C)) SHR (A-(B+1)) 1 "expresie" nu este prezenta, atunci "adresa de lansare in 1 "eticheta". Simbolul "eticheta" nu trebuie sa mai apara ca 1 "eticheta". Simbolul "eticheta" va avea valoarea atribuita 1 "b" pozitii binare (pozitiile 1 "a" la "b"