EnglezăFrancezăSpaniolă

Ad


Favicon OnWorks

crasm - Online în cloud

Rulați crasm în furnizorul de găzduire gratuit OnWorks prin Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

Acesta este comanda crasm care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


crasm - Cross assembler pentru 6800/6801/6803/6502/65C02/Z80

REZUMAT


crasm [-sau fişier cod] [-slx] asmfile

Asamblați programul microprocesorului asmfile și produc fișierul de ieșire fişier cod în Intel HEX
sau în format Motorola S Code. O listă de programe și un tabel de simboluri sunt, de asemenea, produse pe
ieșire standard. Versiunea actuală a crasm poate asambla programe pentru 6800, 6801,
6803, 6502, 65C02, și Z80 procesoare. Lista completă este tipărită atunci când invocați crasm
fara argumente.

OPŢIUNI


-o fişier cod
Specificați numele fișierului de ieșire. Niciun fișier de ieșire nu este produs fără acest lucru
opțiune.

-s Dezactivați avertismentele.

-l Dezactivați ieșirea listei de programe.

-x Dezactivați ieșirea tabelului de simboluri.

SINTAXĂ


Fiecare linie a programului de asamblare ar trebui să urmeze unul dintre următoarele șabloane, unde
parantezele delimitează părțile opționale.

[;comentariu]
etichetă = expresie [;comentariu]
[etichetă] mnemonic operand [;comentariu]

Comentariile sunt introduse prin punct și virgulă (;) și se extind până la capătul liniei. Etichetele sunt
identificatori care conțin până la 36 de caractere alfanumerice (inclusiv punct și liniuță de subliniere).
Etichetele nu pot începe cu o cifră. Formatul câmpului mnemonic și operanzi depinde
pe micro-procesorul selectat. Câteva mnemonici sunt valabile pentru toate procesoarele și sunt
folosit pentru a da directive celor adunaţi. Acestea sunt cunoscute ca „pseudo-mnemonici”.

etichete
Etichetele sunt identificatori care reprezintă
- o adresă absolută,
— o adresă relativă (cod independent de poziție),
- un registru,
- o listă de registre,
— un anumit bit la o anumită adresă,
— sau un mnemonic.

Majoritatea etichetelor sunt compuse din cel mult 36 de caractere alfanumerice, puncte (.) Sau
subliniere (_). Etichetele nu pot începe cu o cifră. Sunt insensibile la majuscule.

Etichete care încep cu punct (.) sunt etichete locale al căror domeniu de aplicare este fie limitat la
macro în care sunt definite, sau la segmentul de cod delimitat de pseudo-mnemonici
COD or DUMMY.

Eticheta „stea” predefinită (*) reprezintă contorul programului curent, adică
adresa la care va fi codificată următoarea instrucțiune de cod de asamblare. Altele predefinite
etichetele includ toate pseudo-mnemonicile, mnemonicile specifice microprocesorului și registrul
nume.

constante
Asamblatul recunoaște constantele numerice exprimate în zecimal, hexazecimal, octal,
binar sau ascii.

┌───────────────────────────────────────────────── ─────────┐
Tip Format Exemple
├───────────────────────────────────────────────── ─────────┤
│zecimală dddd 1234, 675, 12, 1, Dar nu 0.12. │
├───────────────────────────────────────────────── ─────────┤
│hexazecimal $dddd $fd12, 2 dolari AC, $0. │
ddddH 03H, 2da7H, 0FC84H, Dar nu FC84H. │
0Xdddd 0x03, 0x2AC, 0Xfc84. │
├───────────────────────────────────────────────── ─────────┤
│octal ddddQ 377Q, 012412Q. │
├───────────────────────────────────────────────── ─────────┤
│binar %dddd % 01110110, % 1100. │
ddddB 01110110B, 1100B. │
0Bdddd 0b1100
├───────────────────────────────────────────────── ─────────┤
│ascii 'cccc' 'A', „AB”, '"', '\n', '\''. │
"cccc" „\t”, "\"", "a'b". │
└───────────────────────────────────────────────── ─────────┘
Expresii
La fel ca etichetele, expresiile pot reprezenta o adresă absolută (abs), o adresă relativă pentru
cod independent de poziție (rel), un registru (reg), sau o listă de registre (inregistrare), sau a
referință la un anumit bit la o anumită adresă (bspec).

Următorii operatori sunt recunoscuți pe expresii.

┌───────────────────────────────────────────────── ──────────┐
Sintaxă Rezultat Descriere
├───────────────────────────────────────────────── ──────────┤
abs{abs} bspec referință de biți, de ex pia{3}
ADDR(abs) abs adresa de la o referință de bit │
PIC(abs) abs numărul de biți dintr-o referință de biți │
├───────────────────────────────────────────────── ──────────┤
- abs abs complement a doi │
~ abs abs complementul cuiva │
├───────────────────────────────────────────────── ──────────┤
abs << abs abs schimbare la stânga │
abs >> abs abs schimbare la dreapta │
├───────────────────────────────────────────────── ──────────┤
abs | abs abs pe biți sau │
abs & abs abs pe biți și │
abs ^ abs abs pe biți xor │
├───────────────────────────────────────────────── ──────────┤
abs * abs abs înmulțire │
abs * abs abs diviziune │
├───────────────────────────────────────────────── ──────────┤
abs + abs abs adaos │
rel + abs rel adaos │
abs - abs abs scădere │
rel - abs rel scădere │
rel - rel abs scădere │
├───────────────────────────────────────────────── ──────────┤
reg - reg inregistrare interval de înregistrare │
inregistrare \ reg inregistrare lista de înregistrări │
└───────────────────────────────────────────────── ──────────┘
Tabelul listează operatorii în ordinea descrescătoare a priorității. Parantezele pot fi folosite pentru
evita ambiguitățile. Un avertisment este generat atunci când o expresie întreagă este înconjurată cu
paranteză și poate fi confundată cu un mod de adresare cu microprocesor.

Exemple:

(bază + 12 USD) >> 8 & 0xff00
„A”-80H
(bază+0x12)

Ultimul exemplu provoacă un avertisment deoarece parantezele nu au fost necesare și ar putea
sugerează un mod de adresare cu microprocesor.

Toate expresiile aritmetice sunt evaluate pe 32 de biți. Operațiile aritmetice depășesc
în tăcere. Valorile aritmetice sunt apoi trunchiate la dimensiunea implicată de micro-
mnemonicul procesorului. Această trunchiere poate provoca un mesaj de avertizare.

Exemple: toate instrucțiunile următoare

(6502) lda # 1234 $
(6800) ldaa 1234 USD, x
(Z80) ld (ix+0C2H),b

provoca un avertisment

>>> AVERTISMENT: operand revărsare

Cu toate acestea expresie

$1123454 * 1298992

se revarsă în tăcere.

Pseudo-mnemonică
Următoarele pseudo-mnemonice sunt întotdeauna recunoscute.

Procesor cpuname
Indică tipul de microprocesor selectat. Aceasta trebuie să apară înainte de anu micro-
instrucțiuni specifice procesorului. Valorile posibile ale cpuname sunt listate când dvs
invoca crasm fara argumente. Lista actuală include 6800, 6801, 6803, 6502,
65C02, și Z80

REZULTATE binformat
Indică formatul fișierului de ieșire. Argument binformat poate lua valori SCODE
pentru producerea unui fișier de ieșire folosind codul S Motorola sau HEX pentru Intel Hex
format. Valoarea implicită depinde de micro-procesorul selectat.

COD
Delimitați domeniul de aplicare al etichetelor locale și introduceți o secțiune de program.

DUMMY Delimitați sfera etichetelor locale și introduceți o secțiune de program fals a cărei talpă
efectul este de a defini etichete fără a genera cod.

etichetă EQU expresie
etichetă = expresie
Definiți valoarea etichetei etichetă. Etichetele definite folosind aceste directive pot fi
redefinit mai târziu în program.

[etichetă] DB expresie[,...,expresie]
Introduceți octeții de date specificați (8 biți).

[etichetă] DW expresie[,...,expresie]
Introduceți cuvintele de date specificate (16 biți). Ordinea octetilor depinde de
microprocesorul selectat.

[etichetă] DL expresie[,...,expresie]
Introduceți datele lungi specificate (32 biți). Ordinea octetilor depinde de
microprocesorul selectat.

[etichetă] DDB expresie[,...,expresie]
Introduceți octeții dubli specificati (16 biți). Ordinea octetilor este opusul
ordonarea obișnuită a octetilor pentru microprocesorul selectat.

[etichetă] ASC stringconstant
Introduceți reprezentarea ascii a șirului stringconstant . Coarda trebuie să fie
delimitate de ghilimele duble. Secvențele de evadare C \r, \n, \t, \0, \', \", și \\
sunt recunoscute.

[etichetă] DS countexpr,[valexpr]
Introduce countexpr octeți cu valoare valexpr. Valoarea implicită este zero.

[etichetă] ALINIA CHIAR
[etichetă] ALINIA ODD
Introduceți un octet nul pentru a face contorul programului par sau impar.

IF condexpr
...
ELSE
...
ENDC
Asamblare condiționată: Dacă expresie condexpr este diferit de zero, procesați liniile localizate
între IF si ELSE pseudo-mnemonice. În caz contrar, procesează liniile localizate
între ELSE si ENDC pseudo-mnemonice. Instrucțiuni de asamblare condiționată
poate fi imbricat. The ELSE o parte poate fi omisă.

etichetă MACRO
...
ENDM
Definiți un nou mnemonic etichetă echivalent cu toate instrucțiunile situate între
MACRO și ENDM pseudo-mnemonice. Invocările macrocomenzii pot specifica o listă de
operanzi separați prin virgulă. Secvențele de caractere \1, \2, ... \N în macro
definiția sunt înlocuite cu operanzii furnizați. Secvența de caractere \0 is
înlocuit cu numărul de operanzi furnizați.

EXITM
Acest pseudomnemonic poate fi folosit în interiorul unei definiții macro pentru a ieși din macro. Acest
este utilă împreună cu pseudo-mnemonicii de asamblare condiționată.

INCLUDE nume de fișier
Forțați asamblatorul să proceseze fișierul numit nume de fișier la punctul actual.

LISTA ON
LISTA OFF
Activați sau dezactivați producerea unei înregistrări (prestabilit este activat.)

CLIST ON
CLIST OFF
Activați sau dezactivați producerea unei liste pentru ramurile inactive ale a
construcție de asamblare condiționată (implicit este activată.)

ILIST ON
ILIST OFF
Activați sau dezactivați producerea unei liste pentru fișierele incluse (implicit este dezactivat.)

MLIST ON
MLIST OFF
Activați sau dezactivați producerea unei liste pentru extinderile macro (prestabilit este
oprit.)

NAM titlu
Furnizați numele titlu pentru antetul paginilor de listare.

PAGINĂ
Începeți o nouă pagină de înregistrare.

PAGINĂ coloane,rânduri
Specificați dimensiunea unei pagini de listare.

OCOLIRE număr
Sări număr linii.

FAIL mesaj
Generați un mesaj de eroare mesaj.

EXEMPLU


Iată un mic program 6502:

cpu 6502
cout = $fded ; afișa a caracter
* = $300 ; asambla at $300
cod
pstring ldy #0
.1 lda mesaj,y
beq .2
jsr cout
uri
.2 do .1
RTS
mesaj asc "Acest is il mesaj "
cod

CREDITE


Leon Bottou, septembrie 1987.

Utilizați crasm online folosind serviciile onworks.net


Servere și stații de lucru gratuite

Descărcați aplicații Windows și Linux

  • 1
    Phaser
    Phaser
    Phaser este o deschidere rapidă, gratuită și distractivă
    cadru de joc HTML5 sursă care oferă
    Redare WebGL și Canvas
    browsere web desktop și mobile. Jocuri
    poate fi co...
    Descărcați Phaser
  • 2
    Motor VASSAL
    Motor VASSAL
    VASSAL este un motor de joc pentru creare
    versiuni electronice ale plăcii tradiționale
    și jocuri de cărți. Oferă suport pentru
    redarea și interacțiunea pieselor de joc,
    și ...
    Descărcați VASSAL Engine
  • 3
    OpenPDF - Furk of iText
    OpenPDF - Furk of iText
    OpenPDF este o bibliotecă Java pentru creare
    și editarea fișierelor PDF cu un LGPL și
    Licență open source MPL. OpenPDF este
    Succesorul LGPL/MPL open source al iText,
    o ...
    Descărcați OpenPDF - Furk of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistem pentru automatizare
    Analize Geoștiințifice - este un Geografic
    Sistemul informatic (GIS) software cu
    capacități imense pentru geodate
    procesare și ana...
    Descărcați SAGA GIS
  • 5
    Caseta de instrumente pentru Java/JTOpen
    Caseta de instrumente pentru Java/JTOpen
    IBM Toolbox for Java / JTOpen este un
    biblioteca de clase Java care acceptă
    programare client/server și internet
    modele către un sistem care rulează OS/400,
    i5/OS, o...
    Descărcați Toolbox pentru Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (sau D3 pentru documente bazate pe date)
    este o bibliotecă JavaScript care vă permite
    pentru a produce date dinamice, interactive
    vizualizări în browsere web. Cu D3
    tu...
    Descărcați D3.js
  • Mai mult »

Comenzi Linux

  • 1
    abidiff
    abidiff
    abidiff - comparați ABI-urile fișierelor ELF
    abidiff compară aplicația binară
    Interfețe (ABI) a două biblioteci partajate
    în format ELF. Emite un sens
    repor ...
    Fugi abidiff
  • 2
    abidw
    abidw
    abidw - serializați ABI-ul unui ELF
    fișierul abidw citește o bibliotecă partajată în ELF
    format și emite o reprezentare XML
    a ABI-ului său la ieșirea standard. The
    emis...
    Run abidw
  • 3
    copac2xml
    copac2xml
    bibutils - conversie bibliografie
    utilitati...
    Rulați copac2xml
  • 4
    Copt
    Copt
    copt - optimizator peephole SYSNOPIS:
    fișier copt.. DESCRIERE: copt este a
    optimizator de uz general pentru vizor. Aceasta
    citește codul din intrarea sa standard și
    scrie un...
    Fugi copt
  • 5
    gather_stx_titles
    gather_stx_titles
    gather_stx_titles - aduna titlul
    declarații din documentele Stx...
    Rulați gather_stx_titles
  • 6
    gatling-banc
    gatling-banc
    bench - http benchmark...
    Alerga gatling-bench
  • Mai mult »

Ad