Problémák és megoldásaik
1. Rajzoljon egy számegyenest -10 és +10 közötti egész számokkal.
Megoldás:
2. Adja hozzá a következő bináris számokat a 8 bites kettes komplementerhez: 1010102 és 11112.
Megoldás:
3. Csak a kettő komplementer megközelítését használja 8 bitben, hogy kivonja az 11112 bináris számot az 1010102 bináris számból.
Megoldás:
Az 101010 a 8 bites kettős komplementerben 00101010.
8 bites 1111 az 00001111.
Az összes 00001111 8 bites invertálása 11110000-at eredményez.
Ha 1-et hozzáadunk 11110000-hoz, akkor 11110001-et kapunk.
A kettő komplementerének kivonása a kettő komplementerének pozitív és negatív számainak összeadása a következőképpen:
Az 1 végső hordozója a kettős komplemens kivonásával kerül kidobásra.
5. Osszuk el a 36,37510-et 100010-zel decimálisan és binárisan, és hasonlítsa össze az eredményeket.
Megoldás:
A felosztás visszaállítása használatos.
Tizedes osztás négyesre:
A válasz: 36 10 maradék 375 10 .
A 36.375 10 egész számot 2-es bázisra kell konvertálni a következőképpen:
A maradékokat alulról olvasva: 36 375 10 = 1000111000010111 2 .
Az 1000 10 egész számot 2-es bázisra kell konvertálni a következőképpen:
A maradékokat alulról olvasva: 1000 10 = 1111101000 2 .
Következő: 1011000100110111 2 oszt 1111101000 2 hosszú felosztással (restoring division) 36.375 óta 10 = 1011000100110111 2 és 1000 10 = 1111101000 2 (bináris osztás tíz bitben):
Az osztás valójában az osztalék tizenegyedik bitjénél kezdődik, mivel az osztó első tíz bitje kisebb, mint az osztó. A válasz 100100 2 maradék 101110111 2 .
Az eredmények összehasonlításához most meg kell mutatni, hogy a hányadosok egész számai egyenlőek, a maradékok pedig egyenlőek. Ez azt jelenti, hogy be kell mutatni, hogy a 36 10 = 100100 2 és 375 10 = 101110111 2 .
6. Használjon tetszőleges 8 bitet a logikai ÉS, VAGY, XOR, Invertálás, Jobbra eltolás, Balra eltolás, Forgatás jobbra és Balra forgatás illusztrálására. Minden bájtnak 1-nek és 0-nak kell lennie.
Megoldás:
- a) Írja le a nulla ASCII karakter numerikus kódját hexadecimális, bináris és decimális formában!
b) Írja be az „1” ASCII-karakter numerikus kódját hexadecimálisan, binárisan és decimálisan.
c) Írja be az „A” ASCII karakter numerikus kódját hexadecimális, bináris és decimális formában.
d) Írja be az „a” ASCII-karakter numerikus kódját hexadecimális, bináris és decimális formában!
Megoldás:
a) „0”: 30, 00110000, 48
b) „1”: 31, 00110001, 49
c) „A”: 41, 001000001, 65
d) „a”: 61, 001100001, 97
8. Alakítsa át a 49.4910-et a második alapra. Konvertálja az eredményt IEEE 32 bites lebegőpontos formátumba.
Megoldás:
A 49.4910-es, 49-es és .49-es űrlapok eltérően alakulnak át 2-es alapra.
Konvertálás 49:
∴ 4910 = 1100012 az utolsó oszlop aljáról olvasva.
.49 konvertálása:
.49 x 2 = 0,98 az első bit értéke 0
0,98 x 2 = 1,96 másodperc bit az 1
0,96 x 2 = 1,92 harmadik bit az 1
∴ .49 10 = 110 2 olvassa el az utolsó oszlop tetejétől.
Tehát 49,49 10 = 110001,110 2
110001.110 2 = 1,10001110 x 2 +5 szabványos formában a második alap
Az „1.” az 1,10001110 szignifikancia nem jelenik meg az eredményben, de feltételezzük, hogy ott van.
A kitevőnél a 127 10 nullát jelent. Ez azt jelenti, hogy az 5-ös index (hatékonyság). 10 2 5 hozzáadódik a 127-hez 10 . Azaz:
127 10 + 5 10 = 132 10
132 10 át kell konvertálni kettes alapra, majd beilleszteni a kitevő mezőjébe.
Szóval 132 10 = 10000100 2
10000100 2 7 bittel rendelkezik. A kitevő nyolc bites. 10000100 2 nyolc bitje van, és ez rendben van.
49.49 10 pozitív, tehát az előjelbit 0. 32 bites lebegőpontos formátumban 49,49 10 = 110001,110 2 ez:
0 10000100 10001110000000000000000
- a) Miben különbözik az IEEE 64 bites lebegőpontos formátuma a 32 bitestől?
b) Adja meg a két összefüggő okot, amiért a 64 bites formátumot a 32 biteshez képest dupla vagy nagyobb pontosságúnak írják le.
Megoldás:
- – Egy szám 64 bitje van, és nem 32.
– Az előjelbit után 11 bit áll a kitevő számhoz.
– A nulla index kitevője (2 0 ) az 1023 10 = 01111111111 2 .
– A tizenegy bitet 52 bit követi az explicit szignifikancia érdekében.
– Szélesebb számtartománnyal rendelkezik, mint a 32 bites formátum. - Az ok, amiért a 64 bites formátumot dupla vagy nagyobb pontosságnak írják le a 32 bites formátumhoz képest, az az oka, hogy a két egymást követő vegyes tört közötti intervallum, amelyet két egymást követő egész szám határol a 64 bites formátum esetében, kisebb, mint a megfelelő 32 bites formátum intervallum. Ezenkívül a 64 bites formátumban több lehetséges kevert tört van két korlátos egész között, mint a 32 bites formátumban.