Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

temata:09-reprezentace_cisel:main [2011/04/28 13:27]
jasho [Násobenie]
temata:09-reprezentace_cisel:main [2011/06/02 09:46] (aktuální)
george [Zobrazenie čísel v pohyblivej rádovej čiarke]
Řádek 1: Řádek 1:
 +~~ODT~~
 +
 ====== 09 - Reprezentácia čísiel a základné dvojkové aritmetické operácie v počítači ====== ====== 09 - Reprezentácia čísiel a základné dvojkové aritmetické operácie v počítači ======
  
Řádek 134: Řádek 136:
 ---- ----
  
-17<sub>10</sub> = 10001<sub>2</sub> = 10001 * 2<sup>5</sup>+17<sub>10</sub> = 10001<sub>2</sub> = 0,10001 * 2<sup>5</sup>
  
 {{:temata:09-reprezentace_cisel:fp_17.jpeg?400|FP - 17}} {{:temata:09-reprezentace_cisel:fp_17.jpeg?400|FP - 17}}
Řádek 180: Řádek 182:
     * robí sa s kladnými operandmi, keď je jeden záporný tak sa výsledok nakoniec prevedie     * robí sa s kladnými operandmi, keď je jeden záporný tak sa výsledok nakoniec prevedie
 {{:temata:09-reprezentace_cisel:04_cele_cisla_aritmetika_delenie_01.png|}} {{:temata:09-reprezentace_cisel:04_cele_cisla_aritmetika_delenie_01.png|}}
 +
 {{:temata:09-reprezentace_cisel:04_cele_cisla_aritmetika_delenie_02.png|}} {{:temata:09-reprezentace_cisel:04_cele_cisla_aritmetika_delenie_02.png|}}
 +
 +  * zavedieme skratky:
 +    * D - delenec
 +    * d - deliteľ
 +    * Q - podiel
 +    * <m>q_i</m> - i-ty bit podielu
 +    * <m>R_i</m> - i-ty zbytok
 +
 +  * v praxi sa posúva dielčí zbytok vľavo a deliteľ je v pevnej polohe
 +  * keď je deliteľ väčší ako <m>2R_i</m>
 +    * potom <m>q_(n-i) = 0</m>
 +    * inak <m>q_(n-i) = 1</m>
 +
 +{{:temata:09-reprezentace_cisel:delenie_posun_zbytku.png|}}
 +
 +=== Reštaurácia nezáporného zbytku ===
 +
 +  * v praxi sa porovnávanie založené na komparátoroch nepoužíva
 +  * odčítanie sa prevedie skúšobne, teda keď <m>2R_i - d</m> je menšie ako:
 +    * potom <m>q_(n-i) = 0</m>
 +    * inak <m>q_(n-i) = 1</m>
 +  * ak je <m>q_(n-i) = 0</m> výsledok skúšobného odčítania nie je správny, treba pričítať d - reštaurácia nezáporného zvyšku
 +  * postup bez reštaurácie:
 +    * v každom kroku prevádzame len jednu operáciu:
 +    * keď je <m>q_(n-i) = 1</m>, použijeme: <m>R_(i+1) = 2R_i - d</m>
 +    * keď je <m>q_(n-1) = 0</m>, použijeme: <m>R_(i+1) = 2R_i + d</m>
 +    * v každom kroku teda len pričítame alebo odćítame, nemusíme robiť zbytočne 2 operácie
 +
 +{{:temata:09-reprezentace_cisel:delenie_bez_restauracie.png|}}
 +
 +=== Delenie SRT ===
 +
 +  * algoritmus pre delenie znamienkových čísel
 +  * vykonávané operácie sa pre každý krok určujú podľa najvyšších bitov priebežného zbytku
 +  * pre demonštráciu - odhad podľa 3 bitov, ale pre niektoré hodnoty D a d postup zlyháva
 +
 +{{:temata:09-reprezentace_cisel:delenie_srt_priklad.png|}}
 +
 +  * v praxi sa odhaduje podľa viacerých bitov - napr. Pentium - podľa 7 bitov priebežného zbytku a 5 bitov deliteľa
 +  * obvodová realizácia - sekvenčná delička, odhad podľa 3 bitov priebežného zbytku:
 +    * ak má delenec aj deliteľ k ľavostranných núl, posunú sa obsahy registrov PA aj B o k bitov vľavo
 +    * ak je <m>p_n = p_(n-1) = p_(n - 2)</m>, potom <m>q_(n-i) = 0</m> - posun registra PA o 1 bit vľavo
 +    * ak je <m>p_n = 0</m>, potom <m>q_(n-i) = 1</m>, odčítanie PA - B, posun registra PA o 1 bit vľavo
 +    * ak je <m>p_n = 1</m>, potom <m>q_(n-i) = -1</m>, pričítanie PA + B, posun registra PA o 1 bit vľavo
 +    * ak je koncový zbytok menší ako nula, pričítame P + B a odčítame Q - 1
  
 ==== Násobenie ==== ==== Násobenie ====
Řádek 294: Řádek 342:
 == Wallaceov strom == == Wallaceov strom ==
   * Zrychlené sčítání částečných součinů   * Zrychlené sčítání částečných součinů
 +  * 6x6 bitov: 
 +{{:temata:09-reprezentace_cisel:wallaceov_strom_6x6.png|}} 
 +  * 8x8 bitov: 
 +{{:temata:09-reprezentace_cisel:wallaceov_strom_8x8.png|}}
 ===== Zdroj ===== ===== Zdroj =====
  
 +<note>
 +Čerpal som zo slidov k IAS: 
 +https://wis.fit.vutbr.cz/FIT/st/course-files-st.php/course/IAS-IT/lectures/10ias_1.pdf
 +
 +a zo slidov k INP:
 +https://wis.fit.vutbr.cz/FIT/st/course-files-st.php/course/INP-IT/lectures/inp2010_08mult.pdf
 +https://wis.fit.vutbr.cz/FIT/st/course-files-st.php/course/INP-IT/lectures/inp2010_09div.pdf
 +</note>
 ===== Potvrzení ===== ===== Potvrzení =====
  
temata/09-reprezentace_cisel/main.1303990063.txt.gz · Poslední úprava: 2011/04/28 13:27 autor: jasho
Recent changes RSS feed Debian Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki