Home 0415256526.Routledge.Creation.From.Nothing.Until.Now.Nov.2001 El Templario 1 Hammerhead SMT Pulse Induction Metal Detector opt2 0521790131.Cambr Joel Dorman Steele A Brief History of the United States, Fourth Edition (1885) Cartland Barbara Najpić™kniejsze miśÂ‚ośÂ›ci 08 Polowanie na m晜źa Check Your Vocabulary for Academic English Cox Connie Para prawie doskonaśÂ‚a WzM 12 Black Dawn pierwsze próbne rozdziały ENGLISH Travis S. Taylor Warp Speed |
[ Pobierz całość w formacie PDF ] EQ lub = równe NE lub różne | wynikiem są: LT lub | PRAWDA LE lub GT lub > większe niż | GE lub >= większe lub równe Operatory, które nie są specjalnymi znakami, a są słowami kluczowymi muszą być odseparowane od ich operandów przynajmniej jedną spacją lub jednym znakiem tabulacji. Generalnie wyrażenia są rozwiązywane od lewej do prawej zgodnie z pierwszeństwem operatorów, które można zmienić używając nawiasów. Nawiasy mogą być zagnieżdżane do dowolnego poziomu. Wyrażenia zawsze są rozwijane do szesnastobitowej liczby bez znaku. Przekroczenie zakresu jest ignorowane. Gdy wynik musi być liczbą ośmiobitową, bajt wysoki musi mieć wartość 00 lub FF. Kolejność działań: () ^ najwyższa + NOT HIGH LOW (ogólnie) | . | * / MOD | SHL SHR | + (binarnie) | EQ = NE LT = | AND | OR XOR v najniższa Przykład: Wynik wyrażenia P1.((87=3)/10 AND 1 SHR 0DH) wyniesie 91H. III.5Zestaw instrukcji procesora 8051 Kompilator ASEM51 zawiera implementację wszystkich instrukcji maszynowych mikrokontrolera 8051, włącznie z ogólnymi instrukcjami skoków oraz wywołań. Kompilator ma zaimplementowane dwie instrukcje JMP CALL które nie reprezentują kodu maszynowego: ogólny skok oraz ogólne wywołanie. Te instrukcje zostaną zamienione na skok lub wywołanie, niekoniecznie najkrótsze, które dosięgną wyspecyfikowanego adresu. JMP może zostać przetłumaczone na SJMP, AJMP lub LJMP, a CALL może zostać zamienione na ACALL lub LCALL. Trzeba pamiętać, że decyzja kompilatora może nie być optymalna. Dla adresów kodu, które znajdują się poza aktualną instrukcją, kompilator zawsze używa LJMP lub LCALL. Jednakże dla wywołań adresów przed aktualną instrukcją, CALL i JMP mogą być narzędziem, które w znacznym stopniu mogą zredukować rozmiar kodu wynikowego bez jakichkolwiek problemów. Przy użyciu zmiennej $PHILIPS, ASEM51 może zostać przełączony do skróconej listy instrukcji mikrokontrolerów serii Philips 83C75x. To blokuje instrukcje LJMP, LCALL oraz MOVX, a także pseudoinstrukcje XDATA, XSEG, i skoki wraz z wywołaniami zawsze zostaną skompilowane jako wywołania z adresowaniem absolutnym. Reszta instrukcji mikrokontrolerów rodziny 8051 została wyszczególniona w załączniku D. Załączniki I oraz J zawierają tablice instrukcji z ich kodami maszynowymi, mnemonikami, argumentami, długością, zmienianymi flagami oraz czasem wykonywania. Kompleksowy przykładowy program DEMO.A51 zawiera wszystkie instrukcje mikrokontrolera 8051 wypisane z użyciem prawidłowej składni. Dla szczegółowych informacji na temat architektury oraz instrukcji, zajrzyj do dokumentacji HTML MCS51MAN.HTM dołączonej do pakietu. (Wymaga przeglądarkiinternetowej oraz pełnego dostępu do Internetu!) Wszystkie mnemoniki instrukcji dla MCS51 są chronione prawem autorskim na rzecz firmy Intel Corporation! III.6Pseudo instrukcje W poszczególnych rozdziałach wszystkie pseudo instrukcje ASEM51 są opisane. Symbole leksykalne są napisane małymi literami, a słowa kluczowe asemblera są napisane dużymi literami. Argumenty instrukcji są reprezentowane przez , lub coś w tym rodzaju. Wyrażenia numeryczne są przedstawione jako , itd. Elementy składni zamknięte w nawiasach są opcjonalne. Zapis ... oznacza zawsze lista z dowolną liczbą elementów . DB [, [... ]] definiuje bajty Instrukcja DB rezerwuje i inicjuje ilość bajtów z wartościami użytymi jako argumenty. Argumenty mogą być wyrażeniami (które muszą być w formacie 8 bitowym) lub łańcuchami znakowymi dowolnej długości. Użycie DB jest dozwolone tylko w segmencie CODE! Przykład: DB 19, January ,98,(3*7+12)/11 DW [, [, ... ]] definiuje słowa (zmienne typu word) Instrukcja DW rezerwuje pamięć na zmienne typu word i inicjuje je wartościami zdefiniowanymi w argumentach. Każdy argument może być wyrażeniem i wymaga dwóch bajtów przestrzeni. Użycie DW jest dozwolone jedynie w segmencie CODE! Przykład: DW 0,0C800H,1999,4711 DS definiuje przestrzeń Wyrażenie rezerwuje daną ilość bajtów bez ich inicjacji w aktualnym segmencie. Wartość musi być znana przy pierwszym przejściu! Użycie DS jest dozwolone w każdym segmencie poza segmentem BIT! Przykład: DS 200H DBIT definiuje bity [ Pobierz całość w formacie PDF ] |
||||
Wszelkie Prawa Zastrzeżone! Jeśli jest noc, musi być dzień, jeśli łza- uśmiech Design by SZABLONY.maniak.pl. | |||||