BI-SAP.21 Struktura a architektura počítačů
Jdi na navigaci předmětu

5. Přednáška: Aritmetické operace v přímém a doplňkovém kódu

Opakování kódů pro zobrazení čísel se znaménkem, pevná a pohyblivá řádová čárka, realizace aritmetických operací (sčítání, odčítání, posuvy).

Prezentace (slajdy)

sap-5-oper.pdf

Video

Otázky z přednášky, které se mohou objevit v testech:

  • Zaokrouhlete na 4 místa za řádovou čárkou dvojková čísla: 0,011001 a 110,01010 a) nahoru, b) dolů.
  • Co je to výpůjčka, jaký má vztah k přenosu a kdy se používá?
  • Nakreslete schema pro detekci overflow pro doplňkový kód.
  • Jak poznáte nesprávný výsledek při sčítání čísel v přímém kódu?
  • Jak poznáte nesprávný výsledek při odčítání čísel v přímém kódu?
  • Jak realizujete odčítání pomocí sčítačky pro čísla nezáporná a jak pro čísla v doplňkovém kódu? Uvažujte i detekci nesprávného výsledku.
  • Co musíte udělat při odčítání většího číslo (větší absolutní hodnoty čísla v přímém kódu) od menšího, abyste získali správný výsledek?
  • Napište možné logické výrazy (formule) pro overflow v MNDF pro 8 bitovou sčítačku v doplňkovém kódu (nejnižší bity sčítanců jsou a0 a b0).
  • Nakreslete schéma 4 bitové sčítačky odčítačky v doplňkovém kódu včetně detekce přeplnění (=overflow). Použijte hradla AND, OR, XOR, negace a hotové bloky jednobitové sčítačky. Pojmenujte všechny vstupy a výstupy a určete jejich počet.
  • Napište výraz pro určení situace, kdy přenos v bloku sčítačky vzniká (G) a kdy se šíří dál (P).
  • Napište výraz pro přenos z druhého bloku sčítačky, jestliže jsou k dispozici bloky s výstupy S (součet), P (přenos se přes blok šíří) a G (přenos v bloku vzniká). Do prvního bloku vstupuje přenos zvenku, ale druhý blok tento vstup nemá.
  • Sečtěte dvě osmibitová celá čísla zapsaná šestnáctkově za předpokladu, že jsou zapsána v přímém kódu nebo doplňkovém kódu. Výsledek zapište také šestnáctkově a doplňte informace o hodnotách znamének sčítanců a výsledku a o zda je výsledek správně (hodnoty carry nebo overflow).
  • Zapište postup (algoritmus) získání správného výsledku pro čísla 6B+C7 za předpokladu, že procesor sčítá dvě čísla v přímém kódu, a to vždy A+B kdy výsledek ukládá do A.