InggrisPerancisSpanyol

Ad


favorit OnWorks

crasm - Online di Cloud

Jalankan crasm di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

Ini adalah command crasm yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


crasm - Perakitan silang untuk 6800/6801/6803/6502/65C02/Z80

RINGKASAN


kasar [-atau file kode] [-slx] file asm

Merakit program mikroprosesor file asm dan menghasilkan file keluaran file kode di Intel HEX
atau format Kode S Motorola. Daftar program dan tabel simbol juga dibuat pada
keluaran standar. Versi saat ini dari kasar dapat merakit program untuk 6800, 6801,
6803, 6502, 65C02, dan Z80 prosesor. Daftar lengkap dicetak saat Anda memanggil kasar
tanpa argumen.

PILIHAN


-o file kode
Tentukan nama file keluaran. Tidak ada file output yang dihasilkan tanpa ini
.

-s Nonaktifkan peringatan.

-l Nonaktifkan keluaran daftar program.

-x Nonaktifkan output tabel simbol.

SINTAKSIS


Setiap baris program perakitan harus mengikuti salah satu templat berikut, di mana:
kurung membatasi bagian opsional.

[;komentar]
label = ekspresi [;komentar]
[label] mnemonik operan [;komentar]

Komentar diawali dengan titik koma (;) dan memperpanjang ke akhir baris. Label adalah
pengidentifikasi yang berisi hingga 36 karakter alfanumerik (termasuk titik dan garis bawah).
Label tidak boleh dimulai dengan angka. Format bidang mnemonik dan operan tergantung
pada mikroprosesor yang dipilih. Beberapa mnemonik valid untuk semua prosesor dan
digunakan untuk memberikan arahan kepada yang berkumpul. Ini dikenal sebagai "pseudo-mnemonik".

Label
Label adalah pengidentifikasi yang mewakili
- alamat absolut,
— alamat relatif (posisi kode independen),
- daftar,
- daftar register,
— bit tertentu di alamat tertentu,
— atau mnemonik.

Kebanyakan label terdiri dari paling banyak 36 karakter alfanumerik, titik (.) atau
menggarisbawahi (_). Label tidak boleh dimulai dengan angka. Mereka tidak peka huruf besar/kecil.

Label dimulai dengan titik (.) adalah label lokal yang cakupannya terbatas pada
makro di mana mereka didefinisikan, atau ke segmen kode yang dibatasi oleh pseudo-mnemonik
KODE or DUMMY.

Label "bintang" yang telah ditentukan sebelumnya (*) mewakili penghitung program saat ini, artinya,
alamat di mana instruksi kode perakitan berikutnya akan dikodekan. lainnya yang telah ditentukan sebelumnya
label mencakup semua pseudo-mnemonik, mnemonik khusus mikroprosesor, dan register
nama.

Konstanta
Rakitan mengenali konstanta numerik yang dinyatakan dalam desimal, heksadesimal, oktal,
biner, atau ascii.

┌───────────────────────────────────────────────── ─────────┐
Tipe dibentuk contoh
├───────────────────────────────────────────────── ─────────┤
desimal dddd 1234, 675, 12, 1, tapi tidak 0.12. │.
├───────────────────────────────────────────────── ─────────┤
heksadesimal $dddd $fd12, $2AC, $0. │.
ddddH 03H, 2da7H, 0FC84H, tapi tidak FC84H. │.
0Xdddd 0x03, 0x2AC, 0Xfc84. │.
├───────────────────────────────────────────────── ─────────┤
oktal ddddQ 377Q, 012412Q. │.
├───────────────────────────────────────────────── ─────────┤
biner %dddd % 01110110, % 1100. │.
ddddB 01110110B, 1100B. │.
0Bdddd 0b1100
├───────────────────────────────────────────────── ─────────┤
ascii 'cccc' 'A', 'AB', '"', '\n', '\''. │.
"cccc" "\T", "\"", "a'b". │.
└───────────────────────────────────────────────── ─────────┘
Ekspresi
Seperti label, ekspresi dapat mewakili alamat absolut (abs), alamat relatif untuk
kode independen posisi (rel), daftar (reg), atau daftar register (daftar ulang), atau a
referensi ke bit tertentu di alamat tertentu (spesifikasi).

Operator berikut dikenali pada ekspresi.

┌───────────────────────────────────────────────── ──────────┐
Sintaksis Hasil Deskripsi Produk
├───────────────────────────────────────────────── ──────────┤
abs{abs} spesifikasi referensi bit, misalnya pia{3}
TAMBAH (abs) abs alamat dari sedikit referensi
SEDIKIT(abs) abs nomor bit dari referensi bit
├───────────────────────────────────────────────── ──────────┤
- abs abs komplemen dua
~ abs abs pelengkap seseorang
├───────────────────────────────────────────────── ──────────┤
abs << abs abs shift kiri
abs >> abs abs pergeseran kanan
├───────────────────────────────────────────────── ──────────┤
abs | abs abs bitwise atau
abs & abs abs bitwise dan
abs ^ abs abs bitwise xor
├───────────────────────────────────────────────── ──────────┤
abs * abs abs perkalian
abs * abs abs divisi
├───────────────────────────────────────────────── ──────────┤
abs + abs abs tambahan
rel + abs rel tambahan
abs - abs abs pengurangan
rel - abs rel pengurangan
rel - rel abs pengurangan
├───────────────────────────────────────────────── ──────────┤
reg - reg daftar ulang rentang daftar
daftar ulang \ reg daftar ulang daftar daftar
└───────────────────────────────────────────────── ──────────┘
Tabel mencantumkan operator dalam urutan penurunan prioritas. Tanda kurung dapat digunakan untuk
menghindari ambiguitas. Peringatan dihasilkan ketika seluruh ekspresi dikelilingi dengan
kurung dan dapat dikacaukan dengan mode pengalamatan mikroprosesor.

contoh:

(dasar+$12) >> 8 & 0xff00
'A'-80H
(basis+0x12)

Contoh terakhir menyebabkan peringatan karena tanda kurung tidak diperlukan dan mungkin
menyarankan mode pengalamatan mikroprosesor.

Semua ekspresi aritmatika dievaluasi pada 32 bit. Operasi aritmatika meluap
diam-diam. Nilai aritmatika kemudian dipotong ke ukuran yang tersirat oleh mikro-
mnemonik prosesor. Pemotongan ini dapat menyebabkan pesan peringatan.

Contoh: semua instruksi berikut

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

menyebabkan peringatan

>>> PERINGATAN: Operan melimpah

Namun ekspresi

$1123454 * 1298992

meluap secara diam-diam.

Pseudo-mnemonik
Pseudo-mnemonik berikut selalu dikenali.

CPU nama cpu
Menunjukkan jenis prosesor mikro yang dipilih. Ini harus muncul sebelum mikro-
instruksi khusus prosesor. Nilai yang mungkin dari nama cpu terdaftar saat Anda
memohon kasar tanpa argumen. Daftar saat ini termasuk 6800, 6801, 6803, 6502,
65C02, dan Z80

KELUARAN format bin
Menunjukkan format file keluaran. Argumen format bin dapat mengambil nilai KODE
untuk menghasilkan file keluaran menggunakan kode S Motorola, atau HEX untuk Intel Hex
format. Standarnya tergantung pada prosesor mikro yang dipilih.

KODE
Batasi cakupan label lokal dan perkenalkan bagian program.

DUMMY Batasi cakupan label lokal dan perkenalkan bagian program palsu yang satu-satunya
efeknya adalah mendefinisikan label tanpa menghasilkan kode.

label PERSAMAAN ekspresi
label = ekspresi
Tentukan nilai label label. Label yang ditentukan menggunakan arahan ini dapat berupa
didefinisikan ulang nanti dalam program.

[label] DB ekspresi[,...,ekspresi]
Masukkan byte data yang ditentukan (8 bit).

[label] DW ekspresi[,...,ekspresi]
Masukkan kata data yang ditentukan (16 bit). Urutan byte tergantung pada
mikroprosesor yang dipilih.

[label] DL ekspresi[,...,ekspresi]
Masukkan long data yang ditentukan (32 bit). Urutan byte tergantung pada
mikroprosesor yang dipilih.

[label] DDB ekspresi[,...,ekspresi]
Masukkan byte ganda yang ditentukan (16 bit). Urutan byte adalah kebalikan dari
pemesanan byte biasa untuk mikroprosesor yang dipilih.

[label] ASC string konstan
Masukkan representasi ascii dari string string konstan . Talinya harus
dibatasi oleh tanda kutip ganda. Urutan pelarian C \r, \n, \t, \0, \', \", dan \\
diakui.

[label] DS hitunganexpr,[valexpr]
Memasukkan hitunganexpr byte dengan nilai valexpr. Nilai defaultnya adalah nol.

[label] MELURUSKAN BAHKAN
[label] MELURUSKAN ODD
Masukkan byte nol untuk membuat penghitung program genap atau ganjil.

IF condexpr
...
ELSE
...
AKHIR
Majelis bersyarat: Jika ekspresi condexpr bukan nol, proses garis yang terletak
antara IF dan ELSE pseudo-mnemonik. Jika tidak, proses jalur yang ada
antara ELSE dan AKHIR pseudo-mnemonik. Instruksi perakitan bersyarat
dapat bersarang. NS ELSE bagian dapat dihilangkan.

label MAKRO
...
AKHIR
Tentukan mnemonik baru label setara dengan semua instruksi yang terletak di antara
MAKRO dan AKHIR pseudo-mnemonik. Pemanggilan makro dapat menentukan daftar
operan yang dipisahkan koma. Urutan karakter \1, \2, ... \N di makro
definisi digantikan oleh operand yang disediakan. Urutan karakter \0 is
diganti dengan jumlah operand yang disediakan.

KELUAR
Pseudo mnemonic ini dapat digunakan di dalam definisi makro untuk keluar dari makro. Ini
berguna dalam hubungannya dengan pseudo-mnemonik perakitan bersyarat.

TERMASUK nama file
Paksa assembler untuk memproses file bernama nama file pada titik saat ini.

DAFTAR ON
DAFTAR MATI
Mengaktifkan atau menonaktifkan produksi cantuman (default aktif.)

KLIST ON
KLIST MATI
Mengaktifkan atau menonaktifkan produksi daftar untuk cabang yang tidak aktif dari a
konstruksi perakitan bersyarat (default aktif.)

ILIS ON
ILIS MATI
Mengaktifkan atau menonaktifkan produksi daftar untuk file yang disertakan (default tidak aktif.)

DAFTAR ML ON
DAFTAR ML MATI
Mengaktifkan atau menonaktifkan produksi daftar untuk ekspansi makro (defaultnya adalah
mati.)

NAM judul
Berikan nama judul untuk tajuk halaman daftar.

HALAMAN
Mulai halaman daftar baru.

HALAMAN kolom,baris
Tentukan ukuran halaman daftar.

MELEWATKAN jumlah
Melewatkan jumlah garis.

GAGAL pesan
Buat pesan kesalahan pesan.

CONTOH


Berikut adalah program 6502 kecil:

cpu 6502
biaya = $fded ; pameran a karakter
* = $300 ; berkumpul at $300
kode
pstring ayah #0
.1 lda pesan, kamu
Beq .2
jsr biaya
orang lain
.2 Mengerjakan .1
rts
pesan Asc "Ini is itu pesan "
kode

KREDIT


Leon Bottou, September 1987.

Gunakan crasm online menggunakan layanan onworks.net


Server & Workstation Gratis

Unduh aplikasi Windows & Linux

  • 1
    Phaser
    Phaser
    Phaser adalah pembukaan yang cepat, gratis, dan menyenangkan
    kerangka kerja game HTML5 sumber yang menawarkan
    Rendering WebGL dan Canvas di seluruh
    browser web desktop dan seluler. permainan
    bisa bersama...
    Unduh Phaser.dll
  • 2
    Mesin VASSAL
    Mesin VASSAL
    VASSAL adalah mesin permainan untuk membuat
    versi elektronik dari papan tradisional
    dan permainan kartu. Ini memberikan dukungan untuk
    rendering dan interaksi potongan game,
    dan ...
    Unduh Mesin VASSAL
  • 3
    OpenPDF - Garpu iText
    OpenPDF - Garpu iText
    OpenPDF adalah perpustakaan Java untuk membuat
    dan mengedit file PDF dengan LGPL dan
    Lisensi sumber terbuka MPL. OpenPDF adalah
    LGPL/MPL penerus sumber terbuka iText,
    Sebuah...
    Unduh OpenPDF - Garpu iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistem untuk Otomatis
    Analisis Geoscientific - adalah Geografis
    Perangkat lunak Sistem Informasi (GIS) dengan
    kemampuan luar biasa untuk geodata
    pengolahan dan ...
    Unduh SAGA GIS
  • 5
    Toolbox untuk Java/JTOpen
    Toolbox untuk Java/JTOpen
    Toolbox IBM untuk Java / JTOpen adalah a
    perpustakaan kelas Java mendukung
    client/server dan pemrograman internet
    model ke sistem yang menjalankan OS/400,
    i5/OS, atau...
    Unduh Toolbox untuk Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (atau D3 untuk Dokumen Berbasis Data)
    adalah perpustakaan JavaScript yang memungkinkan Anda
    untuk menghasilkan data yang dinamis dan interaktif
    visualisasi di browser web. Dengan D3
    kamu...
    Unduh D3.js
  • Lebih banyak lagi »

Perintah Linux

Ad