Arytmetyka liczb binarnych

Podobne dokumenty
Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

SYSTEMY LICZBOWE 275,538 =

1. Operacje logiczne A B A OR B

Wykład 2. Informatyka Stosowana. 8 października 2018, M. A-B. Informatyka Stosowana Wykład 2 8 października 2018, M. A-B 1 / 41

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską:

Systemy zapisu liczb.

Układy kombinacyjne 1

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

Kod U2 Opracował: Andrzej Nowak

Zestaw 3. - Zapis liczb binarnych ze znakiem 1

Zapis liczb binarnych ze znakiem

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Operacje arytmetyczne

Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

1.1. Pozycyjne systemy liczbowe

Stan wysoki (H) i stan niski (L)

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

Pracownia Komputerowa wykład VI

Wprowadzenie do informatyki - ć wiczenia

Pracownia Komputerowa wykład IV

Podstawy Informatyki

ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH

Arytmetyka binarna - wykład 6

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

System liczbowy jest zbiorem reguł określających jednolity sposób zapisu i nazewnictwa liczb.

Moduł 2 Zastosowanie systemów liczbowych w informacji cyfrowej

Operacje arytmetyczne w systemie dwójkowym

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Logika binarna. Prawo łączności mówimy, że operator binarny * na zbiorze S jest łączny gdy (x * y) * z = x * (y * z) dla każdego x, y, z S.

1259 (10) = 1 * * * * 100 = 1 * * * *1

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Teoretyczne Podstawy Informatyki

Pracownia Komputerowa wyk ad IV

Wstęp do Techniki Cyfrowej... Algebra Boole a

Układy arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011

Naturalny kod binarny (NKB)

WSTĘP. Budowa bramki NAND TTL, ch-ka przełączania, schemat wewnętrzny, działanie 2

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 5 Liczby w komputerze

Tranzystor JFET i MOSFET zas. działania

LEKCJA. TEMAT: Funktory logiczne.

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

Jednostki informacji. Bajt moŝna podzielić na dwie połówki 4-bitowe nazywane tetradami (ang. nibbles).

Pracownia Komputerowa wykład V

ćwiczenie 202 Temat: Układy kombinacyjne 1. Cel ćwiczenia

Operatory AND, OR, NOT, XOR Opracował: Andrzej Nowak Bibliografia:

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie:

Wstęp do informatyki- wykład 2

Wstęp do informatyki- wykład 1 Systemy liczbowe

Architektura systemów komputerowych Laboratorium 13 Symulator SMS32 Operacje na bitach

Technologie Informacyjne Wykład 4

AKADEMIA MORSKA KATEDRA NAWIGACJI TECHNICZEJ

Arytmetyka stałopozycyjna

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Pracownia Komputerowa wyk ad VI

Systemy liczbowe. Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Liczby rzeczywiste są reprezentowane w komputerze przez liczby zmiennopozycyjne. Liczbę k można przedstawid w postaci:

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.

Automatyzacja Ćwicz. 2 Teoria mnogości i algebra logiki Akademia Morska w Szczecinie - Wydział Inżynieryjno-Ekonomiczny Transportu

Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Wykład 2. Informatyka Stosowana. 10 października Informatyka Stosowana Wykład 2 10 października / 42

Wykład 2. Informatyka Stosowana. 9 października Informatyka Stosowana Wykład 2 9 października / 42

Automatyka Lab 1 Teoria mnogości i algebra logiki. Akademia Morska w Szczecinie - Wydział Inżynieryjno-Ekonomiczny Transportu

INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW

Wstęp do informatyki- wykład 1

Metoda znak-moduł (ZM)

dr inż. Jarosław Forenc

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

DZIAŁANIA NA UŁAMKACH DZIESIĘTNYCH.

Podstawy Informatyki

Dr inż. Jan Chudzikiewicz Pokój 117/65 Tel Materiały:

MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny)

Luty 2001 Algorytmy (7) 2000/2001

Znaki w tym systemie odpowiadają następującym liczbom: I=1, V=5, X=10, L=50, C=100, D=500, M=1000

Algebra Boole a i jej zastosowania

Część 2. Funkcje logiczne układy kombinacyjne

Wykład nr 1 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

RODZAJE INFORMACJI. Informacje analogowe. Informacje cyfrowe. U(t) U(t) Umax. Umax. R=(0,Umax) nieskończony zbiór możliwych wartości. Umax.

Ćwiczenie D1 Bramki. Wydział Fizyki UW

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 2 WSTĘP DO INFORMATYKI

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

Arytmetyka komputerów

Pracownia Komputerowa wyk ad V

WSTĘP DO ELEKTRONIKI

Wykład I: Kodowanie liczb w systemach binarnych. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Kodowanie informacji. Kody liczbowe

Automatyzacja i robotyzacja procesów produkcyjnych

Automatyka Treść wykładów: Literatura. Wstęp. Sygnał analogowy a cyfrowy. Bieżące wiadomości:

O systemach liczbowych

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów.

Transkrypt:

Wartość dwójkowej liczby stałoprzecinkowej Wartość dziesiętna stałoprzecinkowej liczby binarnej Arytmetyka liczb binarnych b n-1...b 1 b 0,b -1 b -2...b -m = b n-1 2 n-1 +... + b 1 2 1 + b 0 2 0 + b -1 2-1 + b -2 2-2 +... + b -m 2 -m gdzie: b - bit, cyfra dwójkowa 0 lub 1 n - liczba bitów całkowitych m - liczba bitów ułamkowych Przykład: Obliczyć wartość stałoprzecinkowej liczby dwójkowej 110101,111011 (2). Sposób pierwszy Obliczamy wartość części całkowitej sumując wagi pozycji zawierających cyfrę 1: 110101 (2) = 32 + 16 + 4 + 1 = 53 (10) Identycznie obliczamy wartość części ułamkowej: 0,111011 (2) = 1 / 2 + 1 / 4 + 1 / 8 + 1 / 32 + 1 / 64 0,111011 (2) = 32 / 64 + 16 / 64 + 8 / 64 + 2 / 64 + 1 / 64 0,111011 (2) = 59 / 64 Łączymy obie części w całość otrzymując wynik: 110101,111011 (2) = 53 59 / 64 Sposób drugi Wartość części całkowitej obliczamy jak powyżej. Część ułamkową traktujemy chwilowo jak liczbę całkowitą, obliczamy jej wartość i wynik mnożymy przez wagę ostatniej pozycji liczby wejściowej: 111011 (2) = 32 + 16 + 8 + 2 + 1 = 59 Waga ostatniej pozycji wynosi 1 / 64, zatem 0,111011 (2) = 59 1 / 64 = 59 / 64 Łączymy część całkowitą z częścią ułamkową i otrzymujemy: 110101,111011 (2) = 53 59 / 64 Dodawanie liczb binarnych W dodawaniu liczb binarnych należy pamiętać o takich zasadach, że: 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 i 1 zapisujemy w pamięci, przenosimy o jedną pozycje dalej (5) 10 +(6) 10 =(11) 10 (5) 10 =(101) 2 (6) 10 =(110) 2 1

Czyść (59) 10 =(0111011) 2 (72) 10 =(1001000) 2 (59) 10 +(72) 10 =(131) 10 Oblicz: 11001 2 + 1000 2 =. 10101010 2 + 1011011 2 =.. 101011 2 + 11011 2 =. 111100 2 + 10010 2 = 1101011 2 + 101100 2 = 11001 2 + 111 2 =.. 11111 2 + 100 2 = 1010101 2 + 10101 2 = Odejmowanie liczb binarnych Odejmowanie liczb binarnych wykonuje się poprzez zamianę jednej z liczb na ujemną. A zatem odejmowanie jest niczym innym jak dodawaniem ujemnych liczb binarnych. Skoro tak, to trzeba wiedzieć jak zapisywać liczby binarne dodatnie w postaci ujemnej. Zapis Uzupełnienie do 2 U2 Przepisujemy bity od prawej strony do pierwszej jedynki (włącznie), a kolejne bity przepisujemy na odwrót (z zaprzeczeniem). 10110100 2 = 01001100 U2 101101 2 = 010011 U2 Liczby binarne można zapisać w postaci ujemnej na dwa sposoby. Zapis Uzupełnienie do 1 U1 Wszystkie bity przepisujemy z zaprzeczeniem. Uzupełnienie do 1 liczby binarnej jest zawsze negacją bitów tej liczby. 10110100 2 = 01001011 U1 101101 2 = 010010 U1 Czy liczby ujemne będą zapisane na U1 czy na U2 to stanowi kwestią umowną. Należy z góry zdefiniować jaki jest stosowany zapis dla ujemnych. W przypadku działań na liczbach ujemnych ostatni bit, czyli bit znajdujący się po lewej stronie, to bit znaku informuje nas czy liczba jest w ogóle ujemna czy nie. Jeżeli jest zero, np. 01111 to znaczy że liczba jest dodatnia ale jeżeli jest "jedynka", np. 10011 to znaczy ze mamy do czynienia z liczbą ujemną w zapisie takim jaki został wyznaczony. 2

Schemat dodawania w przypadku zapisu U1 Dodawanie dwóch liczb binarnych w przypadku, gdy liczby ujemne są reprezentowane w zapisie U1, wykonywane jest przez dodanie tych liczb wraz z bitami znaku. Gdy istnieje przeniesienie z najbardziej znaczącej pozycji, to wynik zostaje zwiększony o jeden, czyli przeniesienie dodajemy do najmniej znaczącej pozycji. Jeżeli wynik dodawania jest dodatni to otrzymana liczba jest liczbą binarną. Jeżeli wynik jest ujemny to należy wykonać na nim jeszcze raz zapis U1, pozostawiając bit znaku bez zmian, i wtedy wynik przyjmie postać binarną. Schemat dodawania w przypadku zapisu U2 Dodawanie dwóch liczb binarnych ze znakiem w przypadku, gdy liczba ujemna zapisana jest jako U2, wykonywane jest przez dodanie tych liczb łącznie z bitem znaku. Przeniesienie na najbardziej znaczącej pozycji zostaje odrzucone. Jeżeli wynik dodawania jest dodatni to otrzymana liczba jest liczbą binarną. Jeżeli wynik dodawania jest ujemny to na otrzymanej liczbie należy wykonać jeszcze raz zapis U2 pozostawiając oczywiście bit znaku bez zmian. Oblicz stosując zapis U1 3 5 = -4 + 3 = 2 1 = -3 + 7 = 5 6 = Działania wykonaj na 4 bitach. Oblicz stosując zapis U2 5 4 = -3 2 = 5 4 = 3 7 = -7 + 6 = Działania wykonaj na 4 bitach. 3

Mnożenie liczb binarnych 0 * 0 = 0 0 * 1 = 0 1 * 0 = 0 1 * 1 = 1 Obie liczby umieszczamy jedna pod drugą tak, aby ich cyfry znalazły się w kolumnach o tych samych wagach: 1101 1011 Każdą cyfrę mnożnej mnożymy przez poszczególne cyfry mnożnika zapisując wyniki mnożeń w odpowiednich kolumnach - tak samo postępujemy w systemie dziesiętnym, a tutaj jest nawet prościej, gdyż wynik mnożenia cyfry przez cyfrę jest zawsze jednocyfrowy: 1 0 1 1 0 0 0 0 Puste kolumny uzupełniamy zerami i dodajemy do siebie wszystkie cyfry w kolumnach. Uważamy na przeniesienia. 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 + 0 0 0 1 0 0 0 1 1 1 1 Oblicz: 101 * 111 = 1011 * 101 = 111 * 111 = 11 * 1101 = 11011 * 1011 = Podstawowe operacje logiczne Jeśli cyfry 0 i 1 potraktujemy tak, jak wartości logiczne fałsz i prawda, to działanie elementów dwustanowych opisują operacje dwuelementowej algebry Boole a. Algebrę Boole a definiują: dwuelementowy zbiór {0, 1} oraz trzy operacje: alternatywa (OR), koniunkcja (AND) i negacja (NOT) wraz ze zbiorem aksjomatów i twierdzeń. Zmienne należące do zbioru {0, 1} oraz ww. operacje nazywamy zmiennymi i operacjami logicznymi. Układy realizujące funkcje logiczne nazywamy funktorami logicznymi (powszechnie używa się też określenia: bramki logiczne) 4

NEGACJA (ang. NOT, pol. NIE, mat. ~) Jest to zamiana wartości cyfry na przeciwną (tzn. 0 na 1 i 1 na 0). ~ 0 = 1 ~ 1 = 0 Działanie podstawowych operacji logicznych często przedstawia się w postaci układów elektrycznych zawierających żarówki i wyłączniki. Przyjmując, że wyłącznik zwarty i świecąca się żarówka reprezentują jedynkę, a wyłącznik rozwarty i zgaszona żarówka reprezentują zero, działanie negacji realizuje układ: Negacja jest operacją jednoargumentową. Symbol graficzny funktora realizującego negację: Negacja jest najprostszym działaniem logicznym. Wynikiem jest liczba przeciwna do wyjściowej. Działanie funktora NOT Suma logiczna (ang. OR, pol. LUB, mat. ) Suma logiczna dwu cyfr binarnych jest równa 0 wtedy i tylko wtedy, gdy obydwie cyfry są równe 0 0 0 = 0 0 1 = 1 1 0 = 1 1 1 = 1 Sumę logiczną realizuje przedstawiony niżej układ: Symbol graficzny funktora OR: Przykłady działania funktora OR: Iloczyn logiczny (ang. AND, pol. I, mat. ) Iloczyn logiczny dwu cyfr binarnych jest równy 1 wtedy i tylko wtedy, gdy obydwie cyfry są równe 1 0 0 = 0 0 1 = 0 1 0 = 0 1 1 = 1 Iloczyn logiczny realizuje przedstawiony niżej układ: Symbol graficzny funktora AND: Przykłady działania funktora AND: 5

Funktory NAND i NOR NAND NOT AND Symbol graficzny funktora NAND NOR NOT OR Symbol graficzny funktora NOR Alternatywa wykluczająca (ang. XOR, pol. ALBO, mat. ) Inaczej: różnica symetryczna, suma modulo 2 XOR exclusive OR Alternatywa wykluczająca dwu cyfr binarnych jest równa 0 wtedy i tylko wtedy, gdy obydwie cyfry są jednakowe. 0 0 = 0 0 1 = 1 1 0 = 1 1 1 = 0 Symbol graficzny funktora XOR: Podstawowe operacje logiczne dla liczb binarnych W operacjach logicznych liczba binarna jest traktowana jako zbiór pojedynczych cyfr. Cyfrowe układy arytmetyczne Odpowiednie połączenie funktorów logicznych pozwala wykonywać operacje arytmetyczne. Reguły dodawania dwu cyfr binarnych w formie tabelki (v1, v2 dodawane cyfry, s ich suma, c przeniesienie) Urządzenie wykonujące dodawanie dwu cyfr binarnych zgodnie z ww. tabelką nazywa się półsumatorem Półsumator dodaje dwie cyfry dwójkowe (v1, v2), podając ich sumę (s) i przeniesienie (c). 6

Przykład półsumatora zbudowanego z pięciu funktorów NAND oraz sprawdzenie jego działania dla wszystkich możliwych wariantów danych wejściowych: Prawa DeMorgana Przy przekształcaniu wyrażeń logicznych korzysta się często z dwóch prostych praw zwanych prawami DeMorgana. Ich zapis słowny brzmi następująco: Negacja alternatywy jest równa koniunkcji negacji: NOT(a OR b) = (NOT a) AND (NOT b). Negacja koniunkcji jest równa alternatywie negacji: NOT(a AND b) = (NOT a) OR (NOT b). Prawa De Morgana udowadniamy za pomocą tabelek, w których konstruujemy wyniki wyrażenia po lewej i po prawej stronie równości i sprawdzamy, czy otrzymaliśmy to samo. Jeśli tak, to prawo zostaje udowodnione: 7

8