Architektura komputerów
|
|
- Wacław Leszczyński
- 2 lat temu
- Przeglądów:
Transkrypt
1 Architektura komputerów Wykład 8 Jan Kazimirski 1
2 Assembler x86 2
3 Podstawowe instrukcje x86 Instrukcje transferu danych Arytmetyka binarna i dziesiętna Instrukcje logiczne Instrukcje sterujące wykonaniem programu Operacje blokowe Inne 3
4 Instrukcje transferu danych Prześlij dane - MOV Realizuje przesłania: rejestr-rejestr, rejestrpamięć, pamięć-rejestr, oraz załadowanie danej natychmiastowej do rejestru Prześlij dane warunkowo Zbiór instrukcji realizujących przesłanie jeżeli spełniony jest warunek Przykład: CMOVC przenieś jeśli nastąpiło przeniesienie
5 Instrukcje transferu danych Zamień zawartość operandów - XCHG Zamienia miejscami zawartości rejestrów lub rejestru i pamięci Porównaj i zamień - CMPXCHG Może być stosowana jako atomowa instrukcja typu test and set (z przedrostkiem LOCK)
6 Instrukcje transferu danych Umieść operand na stosie PUSH. Umieszcza na stosie operand rejestr, daną z pamięci lub natychmiastową. Zdejmij ze stosu POP. Zdejmuje wartość ze stosu i umieszcza ją w rejestrze lub pamięci. Umieszczanie lub zdejmowanie ze stosu zawartości wszystkich rejestrów instrukcje PUSHA i POPA.
7 Instrukcje transferu danych Instrukcje konwersji Dokonują konwersji rozszerzającej bajt->słowo, słowo->podwójne słowo itd. Prawidłowo obsługują liczby ujemne (kod U2) Przykład: CWD konwertuj słowo na podwójne słowo
8 Arytmetyka binarna Dodawanie i odejmowanie ADD dodaj operand źródłowy do docelowego ADC dodaj z przeniesieniem INC zwiększ o jeden wartość operandu SUB odejmij operand źródłowy od docelowego SBB odejmij z przeniesieniem DEC zmniejsz o jeden wartość operandu
9 Arytmetyka binarna Porównanie i negacja CMP porównaj operandy i ustaw flagi. NEG zmień znak operandu na przeciwny. Mnożenie MUL mnożenie liczb bez znaku. IMUL mnożenie liczb ze znakiem. Używa akumulatora.
10 Arytmetyka binarna Dzielenie DIV dzielenie liczb bez znaku IDIV dzielenie liczb ze znakiem Zwraca osobno wynik dzielenia i resztę z dzielenia Dzielenie przez zero powoduje wygenerowanie wyjątku
11 Arytmetyka dziesiętna Arytmetyka na liczbach zapisanych w kodzie BCD. Wykonywana za pomocą instrukcji operacji binarnych połączonych z dodatkowymi instrukcjami konwertującymi dane między reprezentacją binarną a kodem BCD.
12 Instrukcje logiczne Operatory logiczne AND, OR, XOR Dopuszczalne kombinacje operandów: rejestr - rejestr, rejestr - pamięć, rejestr - dana natychmiastowa, pamięć dana natychmiastowa Negacja logiczna NOT Operandem może być rejestr lub pamięć
13 Przesunięcia i rotacje Przesunięcia bitowe SHR przesunięcie logiczne w prawo SHL przesunięcie logiczne w lewo Rotacje bitowe ROR rotacja w prawo ROL rotacja w lewo
14 Operacje na bitach Zestaw instrukcji operujących na poszczególnych bitach danych Ustawianie poszczególnych bitów Zerowanie poszczególnych bitów Wyszukiwanie ustawionego bitu Warunkowe ustawianie bitów Testowanie poszczególnych bitów
15 Instrukcje sterujące wykonaniem programu Instrukcja skoku bezwarunkowego JMP Przenosi sterowanie do nowej pozycji w pamięci Operandem może być dana natychmiastowa, rejestr lub adres w pamięci Adres skoku może być względny (wyliczany na podstawie aktualnej pozycji) lub bezwzględny.
16 Instrukcje sterujące wykonaniem programu Wywołanie procedury CALL Tzw. skok ze śladem - instrukcja skoku z zachowaniem na stosie adresu następnej instrukcji Sposoby wywołania są takie same jak JMP Powrót z procedury RET Instrukcja pobiera adres ze stosu (umieszczony tam przez CALL) i wykonuje skok do tego adresu.
17 Instrukcje sterujące wykonaniem programu Skoki warunkowe Zestaw instrukcji odpowiadających instrukcji JMP ale realizujących skok tylko w przypadku spełnionego warunku. Przykłady: JE skocz jeśli równe JNE skocz jeśli nierówne JZ skocz jeśli zero
18 Instrukcje sterujące wykonaniem programu Instrukcja pętli LOOP Pozwala zrealizować pętlę sterowaną zawartością rejestru ECX. Instrukcja sprawdza zawartość ECX i jeżeli jest on większy od zera to zmniejsza go o 1 i wykonuje skok do podanego adresu.
19 Operacje blokowe Zestaw instrukcji pozwalających na operacje na blokach danych. Podstawowe operacje: MOVS kopiuj blok danych CMPS porównaj blok danych SCAS szukaj w bloku danych LODS wczytaj blok danych STOS zapisz blok danych
20 Operacje blokowe Wersje dla różnych rozmiarów danych, np. dla MOVS MOVSB (operuje na bajtach), MOVSW (operuje na słowach) itd. Korzystają z rejestrów ESI i EDI do adresowania adresów źródłowego i docelowego (z automatyczną inkrementacją/dekrementacją) Flaga DF określa kierunek (zwiększanie lub zmniejszanie adresów).
21 Operacje blokowe Dodatkowe przedrostki pozwalają powtarzać operację określoną liczbę razy REP powtarzaj dopóki ECX <> 0 REPE, REPZ, REPNE, REPNZ powtarzaj dopóki ECX <> 0 i spełniony warunek. Wersje REP z dodatkowym warunkiem zakończenia stosowane są do operacji CMPS i SCAS.
22 Inne Manipulowanie bitami rejestru znaczników Ustawianie lub zerowanie poszczególnych flag rejestru znaczników (bity przeniesienia i kierunku pętli) Przykłady: STC ustaw bit przeniesienia CLC zeruj bit przeniesienia CMC neguj bit przeniesienia STD ustaw bit kierunku...
23 Inne Manipulowanie rejestrem znaczników Nie wszystkie flagi rejestru znaczników można modyfikować za pomocą osobnych instrukcji Flagi niedostępne bezpośrednio można modyfikować za pośrednictwem akumulatora i instrukcji LAHF (ładuje flagi do AH) i SAHF (ustawia flagi na podstawie AH) Flagami można też manipulować za pomocą stosu i instrukcji PUSF i POPF.
24 Inne Wsparcie dla procedur języków wysokiego poziomu: ENTER, LEAVE ENTER tworzy tzw. ramkę stosu rezerwując na stosie miejsce dla lokalnych zmiennych funkcji. Wywoływana przy wywołaniu funkcji LEAVE likwiduje ramkę stosu utworzoną wcześniej przez ENTER. Wywoływana przy wyjściu z funkcji (return).
25 Inne LEA Załadowanie adresu efektywnego Pozwala załadować adres operandu do rejestru Wykorzystywana do wskazywania operandów przy operacjach blokowych NOP Operacja pusta Nie robi nic poza zwiększeniem wartości licznika instrukcji
26 Inne Instrukcje wejścia wyjścia: IN pobierz daną z portu we/wy OUT wyślij daną do portu we/wy INSB/INSW/INSD pobranie blokowe (z REP) OUTSB/OUTSW/OUTSD wysłanie blokowe (z REP)
27 Inne Obsługa przerwań programowych INT wywołanie przerwania o określonym numerze IRET powrót z przerwania Przerwanie nr 3 (pułapka debuggera) ma specjalny 1-bajtowy rozkaz pozwala to wstawić pułapkę zamiast dowolnej instrukcji.
28 Anatomia programu Program assemblera składa się z sekcji (segmentów). Model ten jest pozostałością po segmentowym modelu pamięci. Podstawowe sekcje:.text segment kodu.data segment danych.bss segment danych zmiennych 28
29 Anatomia programu c.d. Segment.text Kod programu (wykonywane instrukcje) Status: wykonywalny, tylko do odczytu Segment.data Zainicjalizowane dane programu Status: niewykonywalny Segment.bss Niezainicjalizowane dane programu Status: niewykonywalny 29
30 Anatomia programu c.d. Punkt startowy programu symbol _start Dyrektywa assemblera global eksportuje symbol dla programu łączącego (linkera). global _start Etykieta _start wskazuje na pierwszą wykonywaną instrukcję programu 30
31 Dygresja analiza pliku.o Polecenie file podstawowe informacje o pliku. Przykład: file ex01.o ex01.o: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not stripped Informacja o formacie pliku obiektowego (binarnego) Plik zawiera tablicę symboli Tablicę symboli można usunąć (po konsolidacji!) poleceniem strip 31
32 Polecenie objdump Polecenie objdump pozwala na dokładną analizę pliku obiektowego (binarnego) Duża liczba opcji przydatne opcje: -t wyświetla tablicę symboli -d dokonuje deasemblacji kodu programu (tłumaczenia z kodu maszynowego na rozkazy asemblera) 32
33 Polecenie objdump c.d. objdump -t ex01.o ex01.o: file format elf64-x86-64 SYMBOL TABLE: l df *ABS* ex01.asm l d.data data l d.text text l.data msg g.text _start 33
34 Polecenie objdump c.d. objdump -d ex01.o ex01.o: file format elf64-x86-64 Disassembly of section.text: <_start>: 0: b mov $0x4,%eax 5: bb mov $0x1,%ebx a: b mov $0x0,%ecx f: ba 0e mov $0xe,%edx 14: cd 80 int $0x80 16: b mov $0x1,%eax 1b: bb mov $0x5,%ebx 20: cd 80 int $0x80 34
35 Podsumowanie Podstawowe instrukcje asemblera x86 Anatomia programu napisanego w assemblerze x86 Analiza pliku obiektowego (binarnego).o 35
Architektura komputerów. Asembler procesorów rodziny x86
Architektura komputerów Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Rozkazy mikroprocesora Rozkazy mikroprocesora 8086 można podzielić na siedem funkcjonalnych
Architektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
CPU ROM, RAM. Rejestry procesora. We/Wy. Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki
Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki Komputer jest urządzeniem, którego działanie opiera się na wykonywaniu przez procesor instrukcji pobieranych z pamięci operacyjnej
Załącznik do ćwiczenia w środowisku MASM32 wersji 10 Sterowanie przebiegiem wykonania programu
Załącznik do ćwiczenia w środowisku MASM32 wersji 10 Sterowanie przebiegiem wykonania programu Rozkaz cmp jest opisany w grupie rozkazów arytmetycznych (załącznik do ćwiczenia 3). Rozpatrzmy rozkazy procesorów
Architektura Systemów Komputerowych
Jarosław Kuchta Architektura Systemów Komputerowych ćwiczenie 3 Arytmetyka całkowita instrukcja laboratoryjna Wprowadzenie Celem ćwiczenia jest zapoznanie się z budową i sposobem działania jednostki arytmetyczno-logicznej
Struktura i działanie jednostki centralnej
Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje
Technika mikroprocesorowa I Wykład 2
Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,
Lista instrukcji procesora 8051 część 2 Skoki i wywołania podprogramów, operacje na stosie, operacje bitowe
Lista instrukcji procesora 8051 część 2 Skoki i wywołania podprogramów, operacje na stosie, operacje bitowe Ryszard J. Barczyński, 2009 2013 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego
Lista instrukcji mikroprocesora 8086. Programowanie w assemblerze
Lista instrukcji mikroprocesora 8086 Programowanie w assemblerze Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora
Metody Realizacji Języków Programowania
Metody Realizacji Języków Programowania Bardzo krótki kurs asemblera x86 Marcin Benke MIM UW 10 stycznia 2011 Marcin Benke (MIM UW) Metody Realizacji Języków Programowania 10 stycznia 2011 1 / 22 Uwagi
Programowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 8: Procedury Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Linkowanie z bibliotekami zewnętrznymi Operacje na stosie
Ćwiczenie nr 3. Wyświetlanie i wczytywanie danych
Ćwiczenie nr 3 Wyświetlanie i wczytywanie danych 3.1 Wstęp Współczesne komputery przetwarzają dane zakodowane za pomocą ciągów zerojedynkowych. W szczególności przetwarzane liczby kodowane są w systemie
Ćwiczenie 3. Konwersja liczb binarnych
1 Laboratorium Architektury Komputerów Ćwiczenie 3 Konwersja liczb binarnych Komputery wykonują operacje przetwarzania danych na wartościach binarnych, podczas gdy współczesna cywilizacja posługuje się
Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne
Lista rozkazów mikrokontrolera 8051 część pierwsza: instrukcje przesyłania danych, arytmetyczne i logiczne Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego
Architektura typu Single-Cycle
Architektura typu Single-Cycle...czyli budujemy pierwszą maszynę parową Przepływ danych W układach sekwencyjnych przepływ danych synchronizowany jest sygnałem zegara Elementy procesora - założenia Pamięć
Programowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 10: Arytmetyka całkowitoliczbowa Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wprowadzenie Instrukcje przesunięcia bitowego
Programowanie niskopoziomowe
Programowanie niskopoziomowe ASSEMBLER Teodora Dimitrova-Grekow http://aragorn.pb.bialystok.pl/~teodora/ Program ogólny Rok akademicki 2011/12 Systemy liczbowe, budowa komputera, procesory X86, organizacja
A Machine Architecture that is Really Intuitive and Easy. Dane: notacja dwójkowa, zapis w kodzie dopełnieniowym
MARIE A Machine Architecture that is Really Intuitive and Easy http://computerscience.jbpub.com/ecoa Słowo 16b Dane: notacja dwójkowa, zapis w kodzie dopełnieniowym od 8000h (- 32,768 = -2^15) do 7FFFh
Mikrokontroler ATmega32. Język symboliczny
Mikrokontroler ATmega32 Język symboliczny 1 Język symboliczny (asembler) jest językiem niskiego poziomu - pozwala pisać programy złożone z instrukcji procesora. Kody instrukcji są reprezentowane nazwami
Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne
Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...
Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]
Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową
Przedmiot : Programowanie w języku wewnętrznym. Ćwiczenie nr 4
Przedmiot : Programowanie w języku wewnętrznym Ćwiczenie nr 4 str. 1. 1. Użycie Asemblera. Polecenie JMP. Polecenie nakazuje procesorowi wykonywanie kodu programu od nowego innego miejsca. Miejsce to jest
Język programowania: Lista instrukcji (IL Instruction List)
Język programowania: Lista instrukcji (IL Instruction List) Wykład w ramach przedmiotu: Sterowniki programowalne Opracował dr inż. Jarosław Tarnawski 08.12.2009 Norma IEC 1131 Języki tekstowe Języki graficzne
Programowanie w asemblerze Architektura procesora
Programowanie w asemblerze Architektura procesora 17 stycznia 2017 Zwana też ISA (Instruction Set Architecture). Klasyfikacja stos; akumulator; jeśli dodatkowe rejestry specjalizowane (np. adresowy), to
Wprowadzenie do Architektury komputerów. Asembler procesorów rodziny x86
Wprowadzenie do Architektury komputerów Asembler procesorów rodziny x86 Rozkazy mikroprocesora Rozkazy mikroprocesora 8086 można podzielić na siedem funkcjonalnych grup: 1. Rozkazy przesłania danych w
petla:... ; etykieta określa adres w pamięci kodu (docelowe miejsce skoku) DJNZ R7, petla
Asembler A51 1. Symbole Nazwy symboliczne Symbol jest nazwą, która może być użyta do reprezentowania wartości stałej numerycznej, wyrażenia, ciągu znaków (tekstu), adresu lub nazwy rejestru. Nazwy symboliczne
Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski
Układ wykonawczy, instrukcje i adresowanie Dariusz Chaberski System mikroprocesorowy mikroprocesor C A D A D pamięć programu C BIOS dekoder adresów A C 1 C 2 C 3 A D pamięć danych C pamięć operacyjna karta
Architektura Systemów Komputerowych, Wydział Informatyki, ZUT
Laboratorium: Wprowadzenie Pojęcia. Wprowadzone zostaną podstawowe pojęcia i mechanizmy związane z programowaniem w asemblerze. Dowiemy się co to są rejestry i jak z nich korzystać. Rejestry to są wewnętrzne
Zuzanna Hartleb i Artur Angiel
ARCHITEKTURA KOMPUTERÓW - LABORATORIUM Program hybrydowy Dokumentacja ćw. 1-4 Zuzanna Hartleb i Artur Angiel 2010-06-16 Działanie Program pobiera od użytkownika liczbę zmiennoprzecinkową, sprawdza poprawnośd
Programowanie mikrokontrolerów (CISC)
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
Architektura systemów komputerowych Laboratorium 7 Symulator SMS32 Stos, Tablice, Procedury
Marcin Stępniak Architektura systemów komputerowych Laboratorium 7 Symulator SMS32 Stos, Tablice, Procedury 1. Informacje 1.1. Stos Stos jest strukturą danych, w której dane dokładane są na wierzch stosu
J. Duntemann Zrozumieć Assembler Leo J. Scanlon Assembler 8086/8088/80286 S. Kruk Programowanie w Języku Assembler
ASSEMBLER J. Duntemann Zrozumieć Assembler Leo J. Scanlon Assembler 8086/8088/80286 S. Kruk Programowanie w Języku Assembler Geneza (8086, 8088). Rejestry Adresowanie pamięci Stos Instrukcje Przerwania
4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24
Wymagania proceduralnych języków wysokiego poziomu ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH modele programowe procesorów ASK MP.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad.
Lista Rozkazów: Język komputera
Lista Rozkazów: Język komputera Większość slajdów do tego wykładu to tłumaczenia i przeróbki oficjalnych sladjów do podręcznika Pattersona i Hennessy ego Lista rozkazów Zestaw rozkazów wykonywanych przez
Podstawy Informatyki
Podstawy Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 3 Bożena Woźna-Szcześniak (AJD) Podstawy Informatyki Wykład 3 1 / 42 Reprezentacja liczb całkowitych
Przykładowe pytania DSP 1
Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..
1. Pobrać plik masm.zip (Macro Assembler 6.15 & Segmented Executable Linker 5.60) (http://www.cs.put.poznan.pl/mantczak/teaching/itc/masm.zip).
J.Nawrocki, M. Antczak, G. Palik, A. Widelska Plik źródłowy: 07cw4-asm.doc; Data: 2007-09-26 6:00 Ćwiczenie nr 4 Język asemblera Środowisko uruchomieniowe 1. Pobrać plik masm.zip (Macro Assembler 6.15
Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory
Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory Poniżej pozwoliłem sobie za cytować za wikipedią definicję zmiennej w informatyce.
Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin
Podstawy techniki cyfrowej Mikroprocesory Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Mikroprocesor to układ cyfrowy wykonany jako pojedynczy układ scalony o wielkim stopniu integracji zdolny do wykonywania
Architektura komputerów
Architektura komputerów Wykład 6 Jan Kazimirski 1 Architektura x86 2 Środowisko wykonawcze x86 (32-bit) Przestrzeń adresowa Liniowa przestrzeń adresowa do 4 GB Fizyczna przestrzeń adresowa do 64 GB Rejestry
Logiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Mikrokontroler ATmega32. Tryby adresowania Rejestry funkcyjne
Mikrokontroler ATmega32 Tryby adresowania Rejestry funkcyjne 1 Rozrónia si dwa główne tryby: adresowanie bezporednie i porednie (jeli jeden z argumentów jest stał, ma miejsce take adresowanie natychmiastowe)
Programowanie mikrokontrolera 8051
Programowanie mikrokontrolera 8051 Podane poniżej informacje mogą pomóc w nauce programowania mikrokontrolerów z rodziny 8051. Opisane są tu pewne specyficzne cechy tych procesorów a także podane przykłady
Programowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 2: Reprezentacja danych Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Kilka ciekawostek Zapisy binarny, oktalny, decymalny
Architektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
Kod hex Instrukcja Opis 37 AAA Koryguj AL po dodawaniu BCD
AAA ASCII adjust after addition 37 AAA Koryguj AL po dodawaniu BCD AAA powoduje korekcję znajdującego się w AL wyniku dodawania dwóch liczb, o ile dodawane są liczby BCD. Dopiero po korekcji wynik będzie
Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania
Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia
PROGRAMOWANIE NISKOPOZIOMOWE. Adresowanie pośrednie rejestrowe. Stos PN.04. c Dr inż. Ignacy Pardyka. Rok akad. 2011/2012
PROGRAMOWANIE NISKOPOZIOMOWE PN.04 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 2 3 Ćwiczenia laboratoryjne c Dr inż. Ignacy Pardyka (Inf.UJK) PN.04 Rok akad.
architektura komputerów w 1 1
8051 Port P2 Port P3 Transm. szeregowa Timery T0, T1 Układ przerwań Rejestr DPTR Licznik rozkazów Pamięć programu Port P0 Port P1 PSW ALU Rejestr B SFR akumulator 8051 STRUKTURA architektura komputerów
. III atyka, sem, Inform Symulator puterów Escape rchitektura kom A
Symulator Escape Konfiguracja ogólna Enable MUL and DIV Complete Set of Comp.Oper Sign Extension of B/H/W Memory Oper on B/H/W Program Program Dane Dane Załaduj konfigurację symulatora (File -> OpenFile)
Pascal typy danych. Typy pascalowe. Zmienna i typ. Podział typów danych:
Zmienna i typ Pascal typy danych Zmienna to obiekt, który może przybierać różne wartości. Typ zmiennej to zakres wartości, które może przybierać zmienna. Deklarujemy je w nagłówku poprzedzając słowem kluczowym
Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne
Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne 1. Bit Pozycja rejestru lub komórki pamięci służąca do przedstawiania (pamiętania) cyfry w systemie (liczbowym)
Mikrooperacje. Mikrooperacje arytmetyczne
Przygotowanie: Przemysław Sołtan e-mail: kerk@moskit.ie.tu.koszalin.pl Mikrooperacje Mikrooperacja to elementarna operacja wykonywana podczas jednego taktu zegara mikroprocesora na informacji przechowywanej
Liczniki, rejestry lab. 09 Mikrokontrolery 8051 cz. 1
Liczniki, rejestry lab. 09 Mikrokontrolery 8051 cz. 1 PODSTAWY TECHNIKI CYFROWEJ I MIKROPROCESOROWEJ EIP KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII WWW.KEIASPE.AGH.EDU.PL AKADEMIA
Ćwiczenie nr 6. Programowanie mieszane
Ćwiczenie nr 6 Programowanie mieszane 6.1 Wstęp Współczesne języki programowania posiadają bardzo rozbudowane elementy językowe, co pozwala w większości przypadków na zdefiniowanie całego kodu programu
end start ; ustawienie punktu startu programu i koniec instrukcji w assemblerze.
Struktura programu typu program.com ; program według modelu tiny name "mycode" ; nazwa pliku wyjściowego (maksymalnie 8 znaków) org 100h ; początek programu od adresu IP = 100h ; kod programu ret ; koniec
Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej
Struktura stanowiska laboratoryjnego Na rysunku 1.1 pokazano strukturę stanowiska laboratoryjnego Z80 z interfejsem częstościomierza- czasomierz PFL 21/22. Rys.1.1. Struktura stanowiska. Interfejs częstościomierza
Elementy oprogramowania sterowników. Instrukcje podstawowe, funkcje logiczne, układy czasowe i liczenia, znaczniki
Elementy oprogramowania sterowników. Instrukcje podstawowe, funkcje logiczne, układy czasowe i liczenia, znaczniki Norma IEC-61131-3 definiuje typy języków: graficzne: schematów drabinkowych LD, schematów
Zapis liczb binarnych ze znakiem
Zapis liczb binarnych ze znakiem W tej prezentacji: Zapis Znak-Moduł (ZM) Zapis uzupełnień do 1 (U1) Zapis uzupełnień do 2 (U2) Zapis Znak-Moduł (ZM) Koncepcyjnie zapis znak - moduł (w skrócie ZM - ang.
Kod U2 Opracował: Andrzej Nowak
PODSTAWY TEORII UKŁADÓW CYFROWYCH Kod U2 Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz http://pl.wikipedia.org/ System zapisu liczb ze znakiem opisany w poprzednim
Wstęp do informatyki. Maszyna RAM. Schemat logiczny komputera. Maszyna RAM. RAM: szczegóły. Realizacja algorytmu przez komputer
Realizacja algorytmu przez komputer Wstęp do informatyki Wykład UniwersytetWrocławski 0 Tydzień temu: opis algorytmu w języku zrozumiałym dla człowieka: schemat blokowy, pseudokod. Dziś: schemat logiczny
PROGRAMY REZYDENTNE Terminate and State Resident, TSR
PROGRAMY REZYDENTNE Terminate and State Resident, TSR O co tu chodzi Podstawowe reguły Jak może program zostać rezydentnym Przechwytywanie przerwań Jak się samoznaleźć w pamięci Aktywacja TSR-u. Problemy
PROGRAMOWANIE NISKOPOZIOMOWE. Systemy liczbowe. Pamięć PN.01. c Dr inż. Ignacy Pardyka. Rok akad. 2011/2012
PROGRAMOWANIE NISKOPOZIOMOWE PN.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 2 4 c Dr inż. Ignacy Pardyka (Inf.UJK) PN.01 Rok akad. 2011/2012 1 / 27 c Dr
2. Architektura mikrokontrolerów PIC16F8x... 13
Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator
Programowalne układy logiczne
Programowalne układy logiczne Mikroprocesor Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 6 grudnia 2014 Zbudujmy własny mikroprocesor Bardzo prosty: 16-bitowy, 16 rejestrów
Pracownia elektryczno-elektroniczna klasa IV
Ćwiczenie nr 2 Cel ćwiczenia: zapoznanie się z nowymi metodami adresowania portów, urządzeń do nich podpiętych (adresowanie pośrednie, bezpośrednie, rejestrowe) oraz poznanie struktury wewnętrznej pamięci
Architektura komputerów
Architektura komputerów Wykład 4 Jan Kazimirski 1 Reprezentacja danych 2 Plan wykładu Systemy liczbowe Zapis dwójkowy liczb całkowitych Działania arytmetyczne Liczby rzeczywiste Znaki i łańcuchy znaków
AGH Akademia Górniczo-Hutnicza w Krakowie Katedra Elektroniki
AGH Akademia Górniczo-Hutnicza w Krakowie Katedra Elektroniki Technika mikroprocesorowa Laboratorium 5 Operacje arytmetyczne Autor: Paweł Russek Tłumaczenie: Marcin Pietroń i Ernest Jamro http://www.fpga.agh.edu.pl/tm
Kurs SIMATIC S7-300/400 i TIA Portal - Podstawowy. Spis treści. Dzień 1. I System SIEMENS SIMATIC S7 - wprowadzenie (wersja 1503)
Spis treści Dzień 1 I System SIEMENS SIMATIC S7 - wprowadzenie (wersja 1503) I-3 Rodzina sterowników programowalnych SIMATIC S7 firmy SIEMENS I-4 Dostępne moduły i ich funkcje I-5 Jednostki centralne I-6
Kurs Podstawowy S7. Spis treści. Dzień 1
Spis treści Dzień 1 I System SIMATIC S7 - wprowadzenie (wersja 1401) I-3 Rodzina sterowników programowalnych SIMATIC S7 firmy SIEMENS I-4 Dostępne moduły i ich funkcje I-5 Jednostki centralne I-6 Podstawowe
1259 (10) = 1 * * * * 100 = 1 * * * *1
Zamiana liczba zapisanych w dowolnym systemie na system dziesiętny: W systemie pozycyjnym o podstawie 10 wartości kolejnych cyfr odpowiadają kolejnym potęgom liczby 10 licząc od strony prawej i numerując
ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH
ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH reprezentacja danych ASK.RD.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 c Dr inż. Ignacy Pardyka (Inf.UJK) ASK.RD.01 Rok
Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)
Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?
Adam Kotynia, Łukasz Kowalczyk
Adam Kotynia, Łukasz Kowalczyk Dynamiczna alokacja pamięci Alokacja pamięci oraz dezalokacja pamięci jest to odpowiednio przydział i zwolnienie ciągłego obszaru pamięci. Po uruchomieniu, proces (program)
Język programowania: Lista instrukcji (IL Instruction List) Wykład w ramach przedmiotu: Sterowniki programowalne Opracował dr inż. Jarosław Tarnawski
Język programowania: Lista instrukcji (IL Instruction List) Wykład w ramach przedmiotu: Sterowniki programowalne Opracował dr inż. Jarosław Tarnawski Norma IEC 1131 Języki tekstowe Języki graficzne Języki
Algorytm mnożenia sekwencyjnego (wariant 1)
Przygotowanie: Przemysław Sołtan e-mail: kerk@moskit.ie.tu.koszalin.pl Algorytm mnożenia sekwencyjnego (wariant 1) //Poczynając z mniej znaczących bitów mnożnika, przesuwamy formowany //rezultat w stronę
Praktycznie całe zamieszanie dotyczące konwencji wywoływania funkcji kręci się w okół wskaźnika stosu.
Krótki artykuł opisujący trzy podstawowe konwencje wywoływania funkcji C++ (a jest ich więcej). Konwencje wywoływania funkcji nie są tematem, na który można się szeroko rozpisać, jednak należy znać i odróżniać
Mikrokontrolery AVR ATmega
Mikrokontrolery AVR ATmega Literatura: 8-bit Microcontroller AVR with 32KBytes In-System Programmable Flash ATmega32 [www.atmel.com] 8-bit AVR Instruction Set [www.atmel.com] Baranowski Rafał, Mikrokontrolery
organizacja procesora 8086
Systemy komputerowe Procesor 8086 - tendencji w organizacji procesora organizacja procesora 8086 " # $ " % strali " & ' ' ' ( )" % *"towego + ", -" danych. Magistrala adresowa jest 20.bitowa, co pozwala
Asembler - język maszynowy procesora
UWAGA! Treść niniejszego dokumentu powstała na podstawie cyklu artykułów pt. Mikrokontrolery? To takie proste zamieszczonych w czasopiśmie Elektronika dla Wszystkich. Asembler - język maszynowy procesora
Metody Realizacji Języków Programowania
1/25 Metody Realizacji Języków Programowania Bardzo krótki kurs asemblera x86 Marcin Benke MIM UW 23 października 2013 /25 Uwagi wstępne Ten, z konieczności bardzo krótki kurs, nie jest w żadnym wypadku
Architektura komputerów
Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz
Podstawy Informatyki Elementarne podzespoły komputera
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Reprezentacja informacji Podstawowe bramki logiczne 2 Przerzutniki Przerzutnik SR Rejestry Liczniki 3 Magistrala Sygnały
Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego
Arytmetyka cyfrowa Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego (binarnego). Zapis binarny - to system liczenia
PROGRAMOWANIE NISKOPOZIOMOWE
PROGRAMOWANIE NISKOPOZIOMOWE PN.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 c Dr inż. Ignacy Pardyka (Inf.UJK) PN.01 Rok akad. 2011/2012 1 / 27 Wprowadzenie
Informacje wstępne. Historia Maszyna Turinga
Informacje wstępne 1 Wykład obejmuje wprowadzenie do techniki mikroprocesorowej omówienie budowy i sposobu działania mikroprocesora pamięci cyfrowe magistrale urządzenia wejścia wyjścia rozwiązania stosowane
Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86
Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86 Spis treści Wprowadzenie... 11 1. Architektura procesorów rodziny x86... 17 1.1. Model procesorów
Układy mikroprogramowane
1. WPROWADZENIE DO MIKROPROGRAMOWANIA...2 2. PRZYKŁADOWY UKŁAD MIKROPROGRAMOWANY...3 2.1. UKŁAD TERUJĄCY...3 2.2. UKŁAD WYKONAWCZY...6 2.3. FORMAT MIKROROZKAZU...10 3. ZETAW LABORATORYJNY...12 Warszawa,
ARCHITEKTURA PROCESORA,
ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy
SYSTEM MIKROPROCESOROWY
SYSTEM MIKROPROCESOROWY CPU ROM RAM I/O AB DB CB Rys 4.1. System mikroprocesorowy MIKROPROCESOR RDZEŃ MIKROPROCESORA PODSTAWOWE ZESPOŁY FUNKCJONALNE MIKROPROCESORA Mikroprocesor zawiera następujące, podstawowe
UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.
Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz
Architektura systemów komputerowych. Poziom układów logicznych. Układy mnoŝące i dzielące
Architektura systemów komputerowych Poziom układów logicznych. Układy mnoŝące i dzielące Cezary Bolek Katedra Informatyki Plan wykładu Układy mnoŝące liczby całkowite MnoŜenie liczb bez znaku MnoŜarka
Technologie Informacyjne Wykład 3
Technologie Informacyjne Wykład 3 Procesor i jego architektura (CISC, RISC, 32/64 bity) Systemy wieloprocesorowe Wojciech Myszka Jakub Słowiński Katedra Mechaniki i Inżynierii Materiałowej Wydział Mechaniczny
LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q
LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone
Informatyka kodowanie liczb. dr hab. inż. Mikołaj Morzy
Informatyka kodowanie liczb dr hab. inż. Mikołaj Morzy plan wykładu definicja informacji sposoby kodowania reprezentacja liczb naturalnych i całkowitych arytmetyka binarna arytmetyka oktalna arytmetyka
Sterowniki programowalne
Wykład w ramach przedmiotu Sterowniki programowalne Sterowniki programowalne GE Fanuc serii 90-30 Zasady działania systemu (część II) Na podstawie dokumentacji GE Fanuc przygotował dr inż. Jarosław Tarnawski
Zasady wykonywania programu drabinkowego w sterowniku
Zasady wykonywania programu drabinkowego w sterowniku Programowanie sterownika Modicon Micro 612xx w środowisku uruchomieniowym Modsoft odbywa się przy pomocy języka drabinkowego wspomaganego blokami funkcyjnymi.
ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem 27.10.2010
ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem 27.10.2010 Do zapisu liczby ze znakiem mamy tylko 8 bitów, pierwszy od lewej bit to bit znakowy, a pozostałem 7 to bity na liczbę. bit znakowy 1 0 1 1
Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer Wojciech Myszka 16 pa«zdziernika 2008
Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer. 1.4 Wojciech Myszka 16 pa«zdziernika 2008 CISC I Complex Instruction Set Computers nazwa architektury mikroprocesorów