EMAS: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
Dodane 3287 bajtów ,  7 kwi 2015
Nie podano opisu zmian
Linia 193: Linia 193:


=== .cpu ===
=== .cpu ===
'''Składnia:''' .cpu <mera400|mx16>
Odpowiednik przełącznika ''-c'' linii poleceń EMAS-a. Pozwala określić typ procesora, dla którego ma być generowany kod wynikowy. Użycie ''mx16'' sprawia, że:
* mnemoniki '''CRON''', '''SINT''', '''SIND''' są rozpoznawane i poprawnie assemblowane
* maksymalny rozmiar wynikowego pliku binarnego wynosi 64k słowa (32k dla ''mera400'')
=== .file ===
=== .file ===
'''Składnia:''' .file ''nazwa_pliku''
Ustala nazwę assemblowanego pliku. Jeśli assembler będzie chciał użyć w komunikatach nazwy pliku, to domyślna nazwa (zgodna z nazwą assemblowanego pliku) zostanie od momentu wydania dyrektywy zastąpiona podaną.
=== .line ===
=== .line ===
'''Składnia:''' .line ''numer_linii''
Ustala numer bieżącej linii assemblacji (poczynając od linii następującej po dyrektywie). Dalsze linie będą numerowane kolejno od podanej wartości.
=== .include ===
=== .include ===
'''Składnia:''' .include ''nazwa_pliku''
Powoduje dołączenie do assemblacji pliku o podanej nazwie.
=== .equ ===
=== .equ ===
'''Składnia:''' .equ ''nazwa_zmiennej'' ''wartość''
Ustala wartość zmiennej assemblacji. Może być ona w dalszej części programu zmieniana.
=== .const ===
=== .const ===
'''Składnia:''' .const ''nazwa_zmiennej'' ''wartość''
Ustala wartość stałej assemblacji. Wartość ta nie może ulec zmianie.
=== .lbyte ===
=== .lbyte ===
'''Składnia:''' .lbyte ''liczba_8_bit'' [, ...]
Zapisuje w programie wynikowym na lewych pozycjach (MSB) kolejnych słów podane wartośći 8-bit.
=== .rbyte ===
=== .rbyte ===
'''Składnia:''' .rbyte ''liczba_8_bit'' [, ...]
Zapisuje w programie wynikowym na prawych pozycjach (LSB) kolejnych słów podane wartośći 8-bit.
=== .word ===
=== .word ===
'''Składnia:''' .word ''liczba_16_bit'' [, ...]
Zapisuje w programie kolejne słowa 16-bit o podanej wartości.
=== .dword ===
=== .dword ===
'''Składnia:''' .dword ''liczba_32_bit'' [, ...]
Zapisuje w programie wynikowym pary słów 16-bit tworzące podaną liczbę 32-bit.
=== .float ===
=== .float ===
'''Składnia:''' .float ''liczba_zmiennoprzecinkowa'' [, ...]
Zapisuje w programie wynikowym trójki słów 16-bit tworzące podaną 48-bit liczbę zmiennoprzecinkową w notacji używanej przez arytmometr wielokrotnej precyzji MERY-400.
=== .ascii ===
=== .ascii ===
'''Składnia:''' .ascii ''łańcuch''
Zapisuje w programie wynikowym podany łańcuch, kodując go po dwa znaki ASCII na słowo maszynowe.
=== .asciiz ===
=== .asciiz ===
'''Składnia:''' .asciiz ''łańcuch''
Zapisuje w programie wynikowym podany łańcuch, kodując go po dwa znaki ASCII na słowo maszynowe. Łańcuch terminowany jest 8-bit wartością '0'.
=== .r40 ===
=== .r40 ===
'''Składnia:''' .r40 ''łańcuch_r40''
Zapisuje w programie wynikowym podany łańcuch, kodując go po trzy znaki R40 na słowo maszynowe.
=== .res ===
=== .res ===
'''Składnia:''' .res ''rozmiar'' [,''liczba_16_bit'']
Rezerwuje w programie wynikowym obszar o podanym rozmiarze (w słowach), wypełniając go zerami. Jeśli podany jest drugi argument, jego wartość używana jest do wypełnienia zamiast zera.
=== .org ===
=== .org ===
'''Składnia:''' .org ''adres''
Ustala nową bieżącą pozycję assemblacji. Następne wygenerowane słowo zostanie umieszczone już pod podanym, nowym adresem.
=== .entry ===
=== .entry ===
'''Składnia:''' .entry ''adres''
Dyrektywa ma efekt wyłącznie w przypadku generowania pliku wynikowego jako obiektu EMELF. Określa adres wejścia do programu.
=== .global ===
=== .global ===
'''Składnia:''' .global ''nazwa_etykiety''
Dyrektywa ma efekt wyłącznie w przypadku generowania pliku wynikowego jako obiektu EMELF. Wskazuje, że etykieta będzie miała zasięg globalny.


== Rozkazy ==
== Rozkazy ==

Menu nawigacyjne