Programowanie mikrokontrolerów (CISC)



Podobne dokumenty
Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne

Lista rozkazów mikrokontrolera 8051

Lista instrukcji procesora 8051 część 2 Skoki i wywołania podprogramów, operacje na stosie, operacje bitowe

Asembler - język maszynowy procesora

LABORATORIUM nr 1. Temat: Wstęp do mikrokontrolerów rodziny MCS-51

TMiK Podstawy Techniki Mikroprocesorowej. Lidia Łukasiak

Obszar rejestrów specjalnych. Laboratorium Podstaw Techniki Mikroprocesorowej Instytut Mikroelektroniki i Optoelektroniki PW

Programowanie mikrokontrolera 8051

IV PROGRAMOWANIE MIKROKOMPUTERA Technika Cyfrowa 2. Wykład 4: Programowanie mikrokomputera 8051

6.1. Zastosowanie mikrokontrolera SAB 80C535 do sterowania silnikiem prądu stałego

Mikrokontrolery w systemach pomiarowo sterujących

architektura komputerów w 1 1

Opis mikrokontrolera 8051 Lista rozkazowa Timery

Ćwiczenie 1. (sd 2) 0x0000 0x0003 0x000B 0x0013 0x001B 0x0023

MIKROPROCESORY I MIKROKONTROLERY INSTRUKCJE / KOMENDY / ROZKAZY: PRZEGLĄD I KILKA PRZYKŁADÓW DLA PRZYPOMNIENIA, GŁÓWNE REJESTRY ROBOCZE CPU:

RAM. MIKROPROCESOR wielki inwalida" MIKROKONTROLER - przykł. AVR

Celem ćwiczenia jest zapoznanie z obsługą klawiatury sekwencyjnej i matrycowej w systemie DSM-51.

Pracownia elektryczno-elektroniczna klasa IV

Ćwiczenie 30. Techniki mikroprocesorowe Programowanie w języku Asembler mikrokontrolerów rodziny '51

LISTA ROZKAZÓW i TRYBY ADRESOWANIA

Mikrokontrolery. Wrocław 2003

ZAPOZNANIE SIĘ Z ZESTAWEM DYDAKTYCZNYM ZD537, OPROGRAMOWANIEM µvision 2 ORAZ OPERACJE NA PAMIĘCIACH

DSM51 operacje przesylania danych i operacje arytmetyczne strona 1

START: ; start programu od adresu 0100H ; zerowanie komórek od 01H do 07FH ( 1 dec dec)

LISTA ROZKAZÓW i TRYBY ADRESOWANIA

Politechnika Warszawska

Architektura komputerów. Asembler procesorów rodziny x86

Technika mikroprocesorowa I Wykład 2

Liczniki, rejestry lab. 09 Mikrokontrolery 8051 cz. 1

architektura komputerów w 1 1

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Architektura komputerów

Architektura systemów komputerowych

Architektura komputerów

Pracownia elektryczno-elektroniczna klasa IV

Struktura i działanie jednostki centralnej

Struktura programu w asemblerze mikrokontrolera 8051

Technika mikroprocesorowa

CPU ROM, RAM. Rejestry procesora. We/Wy. Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki

Instytut Teleinformatyki

Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów

Mikrokontrolery? To takie proste...

AKADEMIA GÓRNICZO HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI, INFORMATYKI I ELEKTRONIKI

Mikrokontroler Intel dr inż. Wiesław Madej

Język programowania C51 dla mikroprocesorów rodziny MCS51

petla:... ; etykieta określa adres w pamięci kodu (docelowe miejsce skoku) DJNZ R7, petla

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

Kompilator języka C na procesor 8051 RC51 implementacja

MIKROPROCESORY architektura i programowanie

MIKROPROCESORY architektura i programowanie

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

. III atyka, sem, Inform Symulator puterów Escape rchitektura kom A

Badanie układów zewnętrznych mikrokontrolera 311[07].Z4.03

Wprowadzenie do Architektury komputerów. Asembler procesorów rodziny x86

Instytut Teleinformatyki

A&Q PYTANIA I ODPOWIEDZI Z MIKROKONTROLERÓW

Elektronika i techniki mikroprocesorowe

Ćwiczenie 2. Siedmiosegmentowy wyświetlacz LED

Systemy wbudowane. Wprowadzenie. Wprowadzenie. Mikrokontroler 8051 Budowa

CPU architektura i rejestry

Metody Realizacji Języków Programowania

Programowanie komputera

Gaweł. Architektura mikroprocesorów Z80 zagadnienia oprogramowania

Przerwania w architekturze mikrokontrolera X51

INSTRUKCJE Instrukcje przeniesienia: Instrukcje konwersji: Arytmetyczne instrukcje:

MIKROKONTROLERY I MIKROPROCESORY

WSPÓŁPRACA UKŁADÓW ISD33XXX/4002/4003

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

Instrukcje do zajęć laboratoryjnych

Analizowanie działania układów mikroprocesorowych 311[50].O1.06

Mikrokontrolery AVR ATmega

Architektura typu Single-Cycle

Pracownia elektryczno-elektroniczna klasa IV

Dyrektywy asemblerowe

Instytut Teleinformatyki

Zerowanie mikroprocesora

1. Operacje logiczne A B A OR B

Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Język programowania: Lista instrukcji (IL Instruction List) Wykład w ramach przedmiotu: Sterowniki programowalne Opracował dr inż. Jarosław Tarnawski

Architektura systemów komputerowych

Mikrokontrolery? To takie proste... Część 8 Asembler język maszynowy procesora

//(4-7 niewykorzystane)zaznaczam - nie bylo mnie na pierwszym wykladzie, stad tez braki, ale rysunki i tak wrzuce:

Język programowania: Lista instrukcji (IL Instruction List)

Instytut Teleinformatyki

Mikrokontrolery 8 bit - wprowadzenie

1. Struktura urządzeń z wykorzystaniem mikrokontrolerów...13

Timer T2 - zgodny z Tryb capture. Tryb auto-reload. Rejestr T2CON - adr. bitowo. dr inŝ. Stefan Brock 2008/2009

Programowanie w asemblerze Architektura procesora

Zasady wykonywania programu drabinkowego w sterowniku

Architektura Systemów Komputerowych, Wydział Informatyki, ZUT

Ćwiczenie 1 Wędrujące światełko

Ćwiczenie 3. Konwersja liczb binarnych

Techniki mikroprocesorowe i systemy wbudowane

Sterowanie pracą programu

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna

KAŻDY Z 8-MIO BITOWYCH PORTÓW MIKROKONTROLERÓW RODZINY 51 MA JEDYNIE REJESTR PORTU: P0, P1, P2, P3, PEŁNIĄ ONE ROLĘ REJESTRÓW DANYCH WE/WY.

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Podstawy Techniki Mikroprocesorowej

Mikroprocesory i mikrosterowniki

Transkrypt:

Repertuar instrukcji Operacje arytmetyczne Operacje logiczne Operacje logiczne na bitach Przesyłanie danych Operacje sterujące (skoki) NOTACJA: Rr rejestry R0... R7 direct - wewnętrzny RAM oraz SFR @Ri - adres pośredni R0 lub R1 bit - bity adresowalne RAM lub SFR /bit - negacja bitu #data - stała 8-bitowa #data16 - stała 16-bitowa addr16 - adres w 64k addr11 - adres w stronie 2k rel - adres względny -128... +127 1/7

TRYBY ADRESOWANIA Adresowanie zapewnione sprzętowo bezpośrednie względne pośrednie (za pomocą rejestrów R0 lub R1) Adresowanie zapewnione przez asemblery adresowanie symboliczne definicje bloków 2/7

OPERACJE ARYTMETYCZNE Dodaj A <- A + ADD A,Rr A,direct A,@Ri A,data Dodaj A <- A + + C ADDC A,Rr A,direct A,@Ri A,data Odejmij A <- A - - C SUBB A,Rr A,direct A,@Ri A,data Zwiększ o jeden INC A Rr direct @Ri DPTR Zmniejsz o jeden DEC A Rr direct @Ri Mnóż A * B MUL (wynik: A low B high ) Dziel A / B DIV ( A wynik B reszta ) Poprawka dziasiętna DA Rozkazy mnożenia i dzielenia zajmują 4 cykle maszynowe Rozkaz INC adresujący DPTR zajmuje 2 cykle maszynowe Pozostałe operacje arytmetyczne wykonywane są w jednym cyklu maszynowym 3/7

OPERACJE LOGICZNE Iloczyn logiczny AND ANL A,Rr A,direct A,@Ri A,#data direct,a direct,#data Suma logiczna OR ORL A,Rr A,direct A,@Ri A,#data direct,a direct,#data Suma modulo 2 XOR XRL A,Rr A,direct A,@Ri A,#data direct,a direct,#data Zerowanie CLR A Negacja CPL A Obrót w lewo RL A Obrót w prawo RR A Obrót w lewo przez C RLC A Obrót w prawo przez C RRC A Zamień 4 bity (hi<-->lo) SWAP A Rozkazy z adresowaniem '' direct,#data '' zajmują dwa cykle maszynowe. Pozostałe operacje logiczne wykonywane są w jednym cyklu maszynowym. 4/7

OPERACJE LOGICZNE NA BITACH Zeruj CLR C bit Ustaw SETB C bit Neguj CPL C bit Iloczyn logiczny ANL C,bit C,/bit Suma logiczna ORL C,bit C,/bit Kopiuj MOV C,bit bit,c Rozkazy ANL i ORL oraz MOV z adresowaniem '' bit,c '' zajmują dwa cykle maszynowe. Pozostałe operacje logiczne wykonywane są w jednym cyklu maszynowym. 5/7

PRZESYŁANIE DANYCH Kopiuj A <- MOV A,Rr A,direct A,@Ri A,#data Kopiuj Rr <- MOV Rr,A Rr,direct Rr,#data Kopiuj direct <- MOV direct,a direct,rr direct,direct direct,@ri direct,#data Kopiuj @Ri <- MOV @Ri,A @Ri,direct @Ri,#data Kopiuj DPTR <- MOV DPTR,#data16 Pamięć programu MOVC A,@A+DPTR A,@A+PC Zewn. pamięć danych MOVX A,@Ri A,@DPTR @Ri,A @DPTR,A Zamień XCH A,Rr A,direct A,@Ri Zamień 4 młodsze bity XCHD A,@Ri Zapisz na stos PUSH direct (SP=SP+1 (SP) <- direct) Odczytaj ze stosu POP direct (direct <- (SP) SP=SP-1) Rozkazy PUSH, POP, MOVC, MOVX oraz znaczna część MOV zajmują dwa cykle maszynowe. 6/7

OPERACJE STERUJĄCE (SKOKI) Podprogramy LCALL addr16 ACALL addr11 RET RETI Skoki bezwarunkowe LJMP addr16 AJMP addr11 SJMP rel JMP @A+DPTR Skoki warunkowe JZ, JNZ, JC, JNC rel (odpowiednio dla ACC=0, ACC 0, C=1, C=0) Skoki warunkowe od bitu JB, JNB, JBC bit,rel (odpowiednio, gdy bit=1, bit=0, bit=1 i zeruj) Porównaj, skocz jeśli CJNE A,direct,rel A,#data,rel Rr,#data,rel @Ri,#data,rel Zmniejsz, skocz jeśli 0 DJNZ Rr,rel direct,rel Niczego nie rób NOP Wszystkie skoki zajmują dwa cykle maszynowe. Operacja NOP nie robi niczego i zajmuje jej to jeden cykl maszynowy!. 7/7