Zrozumiec Assembler8

Zrozumiec Assembler8



32 Zrozumieć Asembler

nie zwykłego kalkulatora (który potrafi liczyć w systemie szesnastkowym) czy kalkulatora programowego, np. z programu Sidekick.

Jednak najlepszym narzędziem jest zwykły czterofunkcyjny kalkulator z pamięcią. Metody przekształceń, które opiszę niżej, wykorzystują zawsze tego rodzaju kalkulator. To, czego teraz spróbuję Ciebie nauczyć, to przekształcanie podstawy systemu liczbowego bez potrzeby długich dodawań czy dzieleń w systemie dziesiętnym.

1.5.1 Przeliczanie liczb szesnastkowych na dziesiętne

Jak to zobaczysz za chwilę, przekształcanie liczby szesnastkowej na dziesiętną jest znacznie łatwiejsze niż w przeciwnym kierunku. Liczbę szesnastkową na dziesiętną przekształcamy lak, jak to do tej pory robiliśmy na rysunkach analizy liczb. Ustalamy wartość dziesiętną dla każdej kolumny w liczbie szesnastkowej, a następnie dodajemy te wartości dziesiętne tworząc liczbę dziesiętną.

Zacznijmy od prostego przykładu. Mamy szesnastkową liczbę 7A2. Zaczynamy liczyć od prawej kolumny. W każdym systemie liczbowym jest to kolumna jednostek. Mamy tu dwie jednostki tak, że wprowadzamy 2 do kalkulatora i zapamiętujemy w jego pamięci (lub wciskamy przycisk +).

Tyle, jeśli chodzi o kolumnę jednostek. Pamiętaj, że masz cały czas do czynienia z wartościami kolumn w systemie szesnastkowym. Każda następna kolumna ma wartość 16 razy większą niż poprzednia kolumna, czyli kolumna z prawej. Przechodzimy na lewo do drugiej kolumny. Druga kolumna (licząc od prawej strony) jest kolumną o wartości 16. (W razie wątpliwości zajrzyj na rys. 1.6.) W drugiej kolumnie, czyli na drugiej pozycji naszej liczby, mamy A. Heksadecymalne A odpowiada dziesiętnie 10. Łączny dziesiętny odpowiednik dla tej kolumny będzie równy 16* 10=160. Wykonaj to mnożenie i wynik dodaj do liczby istniejącej w pamięci kalkulatora.

Teraz przenieśmy się do trzeciej kolumny licząc od prawej strony. W naszej liczbie na trzeciej pozycji jest 7. Wartość dla trzeciej kolumny wynosi 16* 16, czyli 256. Pomnóż na kalkulatorze 256 przez 7 i dodaj wynik do całej sumy. Łączna suma pamięci kalkulatora powinna teraz wynosić 1954, co jest dziesiętnym odpowiednikiem he-ksadecymalnej liczby 7A2.

Wykonajmy jeszcze jedno przekształcenie, tym razem na trochę dłuższej liczbie: C6F0DB.

Zaczynamy od kolumny jednostek B* 1 = 11*1=11. Zapamiętujemy 11. Obliczamy teraz kolumnę szesnastek. D*l6= 13*16=208. Dodajemy 208 do poprzednich 11.

Przechodzimy do kolumny 256. 0*256 = 0. Idziemy dalej.

Obliczamy kolumnę 4096. ł;*4096 = 15*4096= 61 440. Dodajemy do sumy.

Obliczamy kolumnę 65536. 6*65536 = 393 216. Dodajemy do sumy.

Obliczamy kolumnę 1048576. 0*1048576=12*1048576 = 12 852 912. Dodajemy do sumy.

Suma 13 037 787 jest wynikiem końcowym.

Spróbuj teraz samodzielnie obliczyć dziesiętny odpowiednik he-ksadccymalnej liczby 1A55BE.

1.5.2 Przeliczanie liczb dziesiętnych na szesnastkowe

Przeliczanie z systemu dziesiętnego na system szesnastkowy jest niestety trudniejsze i wymaga więcej liczenia. Tutaj musimy ustalać, która kolumna szesnastkowa (możliwie największa) będzie się jeszcze mieścić w liczbie dziesiętnej. A to już wymaga bardziej złożonych obliczeń. Ale spróbujmy to zrobić.

Zacznijmy od stosunkowo prostej liczby 449. Tutaj przyda się kalkulator. Wpisz liczbę 449 i zapamiętaj ją w pamięci kalkulatora.

Musimy teraz ustalić najwyższy numer kolumny szesnastkowej, której wartość co najmniej jeden raz mieści się w tej liczbie. W tabeli 1.6 znajdujemy 256, która jest największą potęgą 16, czyli największą wartością dla kolumn szesnastkowych, która przynajmniej raz mieści się w liczbie 449. Następna potęga liczby 16, czyli kolumna o wartości 512, jest oczywiście większa niż 449.

Ustalimy teraz ilokrotnie wartość 256 mieści się w liczbie 449-Wykonamy dzielenie 449/256=1.7539- Więcej niż jeden, ale mniej niż dwa. Tak więc 449 zawiera jedynie raz wartość 256. Zapisz liczbę 1 na papierze. Ale nie wprowadzaj tej liczby do kalkulatora. Przy przeliczaniu w tym kierunku w kalkulatorze nie zapamiętujemy żad-


Wyszukiwarka

Podobne podstrony:
Zrozumiec Assembler3 Zrozumieć Asembler F jest ile?” 3. Tak wygląda odejmowanie z pożyczką w system
Zrozumiec Assembler5 6 Zrozumieć Asembler my automatycznie, nie zdając sobie zupełnie sprawy, że o
Zrozumiec Assembler6 8 Zrozumieć Asembler dają do jakichś czarnych dziur, którymi zwykle są: szybki
Zrozumiec Assembler1 18 Zrozumieć Asembler1.1 Powrót matematycznego smoka W roku 1966 prawdopodobni
Zrozumiec Assembler0 Zrozumieć Asembler Jeff Duntemann
Zrozumiec Assembler1 Zrozumieć AsemblerJeff DUNTEMANN Copyright © 1993 by John Wileyand Sons Ali ri
Zrozumiec Assembler9 Zrozumieć AsemblerJeff DUNTEMANN Copyright © 1993 by John Wiley and Sons Ali r
Zrozumiec Assembler3 2 Zrozumieć Asembler0.1 Wszystko można zaplanować Szybko! Obudzić dzieci, już
Zrozumiec Assembler4 4 Zrozumieć Asembler Wskaźnik podaje jej jedną z dwóch informacji: 1) jest dos
Zrozumiec Assembler7 10 Zrozumieć Asembler0.3.2 Gramy w Big Bux W jednym z narożników planszy Big B
Zrozumiec Assembler8 12 Zrozumieć Asembler mioty. Na polach gry wykonujemy posunięcia i sprawdzenia
Zrozumiec Assembler9 14 Zrozumieć Asembler0.3.5 Adresowanie Bardzo ważną rolę spełniają (miejscami
Zrozumiec Assembler0 16 Zrozumieć Asembler Rozdział 1_Obce bazyDwójkowy, szesnastkowy i inne system
Zrozumiec Assembler2 20 Zrozumieć Asembler Tabela 1.1. Liczenie po marsjańsku w systemie
Zrozumiec Assembler3 22 Zrozumieć AsemblerMamy marsjańską liczbę n= r©= Każda kolumna zawiera warto
Zrozumiec Assembler4 24 Zrozumieć Asembler mogły być przeniesione na DEC, DEC zaprojektował swoje m
Zrozumiec Assembler6 28 Zrozumieć Asembler Teraz, kiedy już dobrze poznałeś kolumnową notację zarów
Zrozumiec Assembler7 30 Zrozumieć Asembler nym systemie liczbowym i mogą spowodować poważne pomyłki
Zrozumiec Assembler9 34 Zrozumieć Asembler nej sumy. Jedyne, co możemy zapamiętywać, to aktualna wa

więcej podobnych podstron