pds059 (2) tif

pds059 (2) tif



Podstawy konstruowania programów w języku Asembler 59

wym może być też symbol zdefiniowany przez dyrektywę EQU, tak jak to przedstawiono na poniższym przykładzie:

LICZBAl EGU 16

« 9 ft

M0V CX,LICZBAl

W asemblerze mamy nieustannie do czynienia z różnego typu liczbami. Zapisując je w instrukcjach programowych musimy zawsze pamiętać, jak one są duże, czy zmieszczą się do zadeklarowanej komórki lub rejestru, który jest zawsze tak samo szeroki.

Trzeba wiedzieć, iż liczby 8-bitowe ze znakiem mieszczą się w zakresie od +127(7FH) do -(minus) 128(80H), największa 8-bitowa liczba bez znaku wynosi 255 (OFFH); liczby 16-bitowe ze znakiem mieszczą się w zakresie od +32767 (7FFFH) do -(minus) 32768 (8000H), największa 16-bitowa liczba bez znaku wynosi 65535 (OFFFFH); 32-bitowe liczby ze znakiem mieszczą się w zakresie od + 2147483647 (7FFFFFFFH) do — (minus) 2147483648 (80000000H), największa 32-bitowa liczba bez znaku wynosi 4294967295 (OFFFFFFFFH).

Podczas kopiowania liczby do argumentu przeznaczenia, np. podczas działania rozkazu MOV AX,1000, asembler traktuje liczbę 1000 jako tysiąc (w systemie dziesiętnym). W przedstawieniu dwójkowym liczba tysiąc mieć będzie postać: 1111101000. Gdy ta liczba ładowana będzie do 16-bitowego rejestru przeznaczenia (AX), asembler dopisuje do niej z przodu sześć zer, rozszerzając ją do 16-bitowego rejestru. Analogicznie dzieje się dla przypadków z 8- i 32-bitowym rejestrem, gdy wpisywana do nich liczba dodatnia lub ujemna jest o wiele mniejsza niż rozmiar rejestru.

Po tej dłuższej, a jakże ważnej dygresji o rodzajach liczb powróćmy do trybów adresowania. W programach asemblerowych nie tylko stosujemy dwa proste tryby adresowania, poprzez rejestr i natychmiastowe, w których to trybach sięganie po dane lub ich adresy odbywa się bez udziału rejestrów segmentowych lub rejestru stosu; byłoby to zbyt proste, by było prawdziwe.

Tak jak w trybie adresowania natychmiastowego, w którym dana zawarta jest w rozkazie, tak też podobnie jest z trybem adresowania bezpośredniego, z tą jednakże różnicą, że teraz w rozkazie zawarty jest adres efektywny, a nie dane „natychmiastowe”; adres efektywny wyznacza położenie argumentu od początku segmentu. Argumentem adresowania bezpośredniego jest głównie etykieta, np.:

M0V AX, TABLICAl


Wyszukiwarka

Podobne podstrony:
pds061 (2) tif Podstawy konstruowania programów w języku Asembler 61 adresowanie pośrednie stwarza m
pds063 (2) tif Podstawy konstruowania programów w języku Asembler 63 asembler MASM praktycznie różni
Jak pisać programy w języku asembler pod Linuksem?Część 1 - Podstawy, czyli czym to się je. Wyobraźc
Zrozumiec Assembler7 3.4 Proces tworzenia programu w języku Asemblera 89 3-4.1 Asemblowanie kodu
DSC01580 9 9 Przełącznik widoku klas Katedra Podstaw Elektroniki I Programowanie w języku C++ — 2FD&
Jak pisać programy w języku asembler?Wstęp. Pewnie wiele osób spośród Was słyszało już o tym, jaki t
Zapis i Podstawy Konstrukcji Wymiarowanie. Rodzaje rysunków Linia wymiarowa powinna być równoległa d
WYTRZYMAŁOŚĆ I STATECZNOŚĆ KONSTRUKCJI TRÓJWARSTWOWEJ PUDŁA WAGONU OSOBOWEGO wypełnieniem może być
WSiP7 57 PODSTAWY BAZ DANYCHUczestnictwo w związku Uczestnictwo encji w związku może być opcjonalne
może zostać rozpoznany na podstawie objawów, badania radiologicznego klatki piersiowej, które może b
Burda009 Wiadomości podstawoweProste narzucanie oczek Ten sposób rozpoczynania robótki może być stos

więcej podobnych podstron