5. Laskutoimitukset eri lukujärjestelmissä

Samankaltaiset tiedostot
7. Laskutoimitukset eri lukujärjestelmissä 1 / 31

811120P Diskreetit rakenteet

Lukujärjestelmät. Digitaalitekniikan matematiikka Luku 9 Sivu 3 (26) Lukujärjestelmät ja lukujen esittäminen Fe

LUKUTEORIA johdantoa

A-B, kun A < B 1 / 20

1 Lukujen jaollisuudesta

Merkitse kertolasku potenssin avulla ja laske sen arvo.

LUKUJÄRJESTELMÄT. Kymmenjärjestelmä eli desimaalijärjestelmä. Binäärilukujärjestelmä

Paavo Räisänen. Ohjelmoijan binaarialgebra ja heksaluvut.

Digitaalitekniikan matematiikka Luku 10 Sivu 1 (14) Lukujärjestelmämuunnokset. 2 s s

811120P Diskreetit rakenteet

Ohjelmoijan binaarialgebra ja heksaluvut

Palautteita. Tutoriaalit olivat vaikeat! Totta, tentti on onneksi helpompi

C = P Q S = P Q + P Q = P Q. Laskutoimitukset binaariluvuilla P -- Q = P + (-Q) (-Q) P Q C in. C out

Salausmenetelmät. Veikko Keränen, Jouko Teeriaho (RAMK, 2006)

Lukuteorian kertausta

MS-A0402 Diskreetin matematiikan perusteet

811120P Diskreetit rakenteet

OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012

1 Peruslaskuvalmiudet

2 j =

Tietokonearitmetiikka

ANSI/IEEE Std

Kokonaisluvut. eivät ole kokonaislukuja!

Kappale 20: Kantaluvut

Tietokonearitmetiikka

MITEN RATKAISEN POLYNOMIYHTÄLÖITÄ?

Ratkaisut Summa on nolla, sillä luvut muodostavat vastalukuparit: ( 10) + 10 = 0, ( 9) + 9 = 0,...

PERUSKOULUSTA PITKÄLLE

Huom! (5 4 ) Luetaan viisi potenssiin neljä tai viisi neljänteen. 7.1 Potenssin määritelmä

Valitsemalla sopivat alkiot joudutaan tämän määritelmän kanssa vaikeuksiin, jotka voidaan välttää rakentamalla joukko oppi aksiomaattisesti.

Tekijä Pitkä Matematiikka 11 ratkaisut luku 2

3. Kongruenssit. 3.1 Jakojäännös ja kongruenssi

Ortogonaalinen ja ortonormaali kanta

Salausmenetelmät LUKUTEORIAA JA ALGORITMEJA. Veikko Keränen, Jouko Teeriaho (RAMK, 2006) 3. Kongruenssit. à 3.4 Kongruenssien laskusääntöjä

1. Mikä on lukujen 10, 9, 8,..., 9, 10 summa? 2. Mikä on lukujen 10, 9, 8,..., 9, 10 tulo? =?

Jokainen kokonaisluku n voidaan esittää muodossa (missä d on positiivinen kok.luku) Tässä q ja r ovat kokonaislukuja ja 0 r < d.

8 Joukoista. 8.1 Määritelmiä

Ajattelemme tietokonetta yleensä läppärinä tai pöytäkoneena

Jäännösluokat. Alkupala Aiemmin on tullut sana jäännösluokka vastaan. Tarkastellaan

Tietokonearitmetiikka

Digitaalitekniikan matematiikka Harjoitustehtäviä

(d) 29 4 (mod 7) (e) ( ) 49 (mod 10) (f) (mod 9)

MAB3 - Harjoitustehtävien ratkaisut:

Testaa taitosi 1: Lauseen totuusarvo

MAB3 - Harjoitustehtävien ratkaisut:

(1) refleksiivinen, (2) symmetrinen ja (3) transitiivinen.

LAUSEKKEET JA NIIDEN MUUNTAMINEN

Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus.

4 LUKUJONOT JA SUMMAT

Seguinin lauta A: 11-19

Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9

Luonnollisten lukujen ja kokonaislukujen määritteleminen

PUHUTAAN NUMEROILLA Murtoluvut Desimaaliluvut tai

Tietokonearitmetiikka

1 Numeroista lukuja 1.

Laskentaa kirjaimilla

SISÄLLYS - DIGITAALITEKNIIKKA

2.1. Tehtävänä on osoittaa induktiolla, että kaikille n N pätee n = 1 n(n + 1). (1)

Anni Lampinen Eszter C. Neményi Anikó Wéber Hemu Lampinen. Matematiikkaa 3a. Yhteenlasku ja vähennyslasku sujuvaksi lukualueella

a b c d

Matematiikan mestariluokka, syksy

Talousmatematiikan perusteet: Luento 4. Potenssifunktio Eksponenttifunktio Logaritmifunktio

Valitse kuusi tehtävää! Kaikki tehtävät ovat 6 pisteen arvoisia.

Yhden bitin tiedot. Binaariluvun arvon laskeminen. Koodin bittimäärä ja vaihtoehdot ? 1

Esitysmuotoa kutsutaan kantaluvun paikkamerkinnäksi, sillä merkinnässä jokainen numero liittyy sijaintinsa mukaan tiettyyn kantaluvun potenssiin.

Latinalaiset neliöt ja taikaneliöt

Desimaaliluvut, mitä ne oikeastaan ovat?

Markov-ketjut pitkällä aikavälillä

811120P Diskreetit rakenteet

TIES325 Tietokonejärjestelmä. Jani Kurhinen Jyväskylän yliopisto Tietotekniikan laitos

Tekijä MAA2 Polynomifunktiot ja -yhtälöt = Vastaus a)

Liite 1. Laajennettu Eukleideen algoritmi suoraviivainen tapa

Yhteenlaskun ja skalaarilla kertomisen ominaisuuksia

VIII. Osa. Liitteet. Liitteet Suoritusjärjestys Varatut sanat Binääri- ja heksamuoto

jakokulmassa x 4 x 8 x 3x

R : renkaan R kääntyvien alkioiden joukko; R kertolaskulla varustettuna on

2. Polynomien jakamisesta tekijöihin

BM20A0700, Matematiikka KoTiB2

Salausmenetelmät / Osa I Veikko Keränen, Jouko Teeriaho (RAMK, 2006)

2. Eukleideen algoritmi

9.5. Turingin kone. Turingin koneen ohjeet. Turingin kone on järjestetty seitsikko

Python-ohjelmointi Harjoitus 2

Numeeriset menetelmät

TEHTÄVIEN KUVAUKSET. 4. luokan opintopolku (Tuhattaituri-kirjasarja)

Helsingin seitsemäsluokkalaisten matematiikkakilpailu Ratkaisuita

Tietojenkäsittelytieteen ja tilastotieteen matematiikkaa 1/137

2 Pistejoukko koordinaatistossa

! 7! = N! x 8. x x 4 x + 1 = 6.

Johdatus matematiikkaan

Tässä riisinjyvien määrät jokaisessa ruudussa on laskettava yhteen. Tällöin tuloksena on

Jaollisuus kymmenjärjestelmässä

on Abelin ryhmä kertolaskun suhteen. Tämän joukon alkioiden lukumäärää merkitään

a b 1 c b n c n

Mitään muita operaatioita symbolille ei ole määritelty! < a kaikilla kokonaisluvuilla a, + a = kaikilla kokonaisluvuilla a.

y z = (x, y) Kuva 1: Euklidinen taso R 2

Luento 6 Tiedon esitysmuodot. Tiedon esitys laitteistossa (3)

Luento 6 Tiedon esitysmuodot

Diofantoksen yhtälön ratkaisut

Algoritmit C++ Kauko Kolehmainen

Transkriptio:

5. Laskutoimitukset eri lukujärjestelmissä Lukujen esitykset eri lukujärjestelmissä Muunnokset lukujärjestelmien välillä Laskutoimitukset eri lukujärjestelmissä. 5.1. Muunnokset lukujärjestelmien välillä Jakoalgoritmi: Kun a ja b ovat kokonaislukuja ja b > 0, niin on olemassa sellaiset yksikäsitteiset kokonaisluvut r ja q, että a = qb + r, missä 0 r < b Jakoalgoritmia käytetään luvun koodauksessa eri kantalukujen avulla.

Luku 10-järjestelmässä Tavallisesti käytetään 10-järjestelmän lukuja (10-kantaisia lukuja). Luku a esitetään jonona r n r n 1...r 2 r 1 r 0, missä r 0 ilmoittaa ykköset, r 1 kymmenet, r 2 sadat, jne. Tarvittaessa merkitään: (r n r n 1...r 2 r 1 r 0 ) 10. 10-kantainen luku voidaan esittää myös summana: a = r n r n 1... r 2 r 1 r 0 = r n 10 n + r n 1 10 n 1 + + r 2 10 2 + r 1 10 1 + r 0 10 0 = (r n 10 n 1 + r n 1 10 n 2 + + r 2 10 + r 1 )10 + r 0 = q 0 10 + r 0 Luvun a numero r 0 saadaan jakoalgoritmin mukaisesti jakamalla a 10:llä ja poimimalla jakojäännös r 0 ykkösten esittäjäksi. r 1 löydetään samoin jakoalgoritmilla soveltamalla algoritmia lukuun r n r n 1...r 2 r 1 = q 0 jolloin saadaan q 0 = r n r n 1... r 2 r 1 = r n 10 n 1 + r n 1 10 n 2 + + r 2 10 + r 1 = (r n 10 n 2 + + r 2 )10 + r 1 = q 1 10 + r 1

Jatkamalla jakamista ja poimintaa, huomataan q i = (r n 10 n (i+2) + + r i+2 )10 + r i+1 = q i+1 10 + r i 1, kun i = 0, 1, 2,..., n 2. Muut lukujärjestelmät Edelläkuvattua jakoalgoritmia voidaan käyttää myös k-kantaisten lukujen laskentaan (k kokonaisluku, k > 0). Kun a on 10-järjestelmän luku, niin sama luku k-kantaisena (huom! k on 10-järjestelmän luku) (d s d s 1... d 2 d 1 d 0 ) k tai lyhyesti d s d s 1... d 2 d 1 d 0 k a = d s k s + d s 1 k s 1 + + d 2 k 2 + d 1 k 1 + d 0 k 0 = (d s k s 1 + d s 1 k s 2 + + d 2 k + d 1 )k + d 0 = q 0 k + d 0

Vastaavasti kuin 10-järjestelmän tapauksessa k-järjestelmän luvun numerot d i saadaan jakoalgoritmin jakojäännöksistä kuten edellä 10-järjestelmän tapauksessa. Esimerkki 5.1. Luku 54321 7 = (5 7 4 + 4 7 3 + 3 7 2 + 2 7 1 + 1) 10 = 13539 10. k>10 Koska k-järjestelmän luvun numerot saadaan jakoalgoritmin jakojäännöksistä, niin mahdollisia numeroita ovat 0, 1, 2,..., k 1. Jos k = 2 (binääriluvut), niin mahdollisia numeroita ovat 0 ja 1 ja binääriluvut koostuvat 0:ien ja 1:en muodostamista jonoista; Jos k = 3 : mahdollisia numeroita ovat 0,1 ja 2;... k = 10 : mahdollisia numeroita ovat 0,1,2,3,4,5,6,7,8 ja 9.

k-järjestelmän numerot jatkoa Kun 11 k 100, niin mukaan tulee (10-järjestelmän (laskut tapahtuvat 10-järjestelmässä)) kaksinumeroisia jakojäännöksiä. Kun k 101 niin jakojäännökset voivat olla kolme tai vielä useampia (10-järjestelmän) numeroita käsittäviä. Luvun merkitsemisen idea numerojonona on, että jokainen numero koostuu yhdestä merkistä ja niinpä, kun jakojäännökset ovat 10, 11, 12,... näille on annettava uudet 1-merkkiset nimet. Tavallisesti merkitään 10 = A, 11 = B, 12 = C,.... k = 12 : mahdollisia numeroita ovat 0,1,2,3,4,5,6,7,8, 9, A ja B. k = 16:mahdollisia numeroita ovat 0,1,2,3,4,5,6,7,8, 9, A, B, C, D, E ja F. Esimerkki 5.2. Esimerkki 5.2. Muunna luku 893 10 a)16- b) 2-järjestelmän luvuksi. Ratk. a) 893 = 55 16 + 13 55 = 3 16 + 7 3 = 0 16 + 3 Koska (13) 10 = D 16, niin 893 10 = (37D) 16 b) Vastaavasti 893 10 = (1101111101) 2

Esimerkki 5.3. Esimerkki 5.3. Muunna luku (AAB) 13 a)10- b) 7-järjestelmän luvuksi. Ratk. a) Luku (AAB) 13 = A13 2 +A13 1 +B13 0 = 10 169+10 13+11 = 1831 = (1831) 10 b)sama luku 7-järjestelmässä on (1831) 10 = d s 7 s + d s 1 7 s 1 + + d 2 7 2 + d 1 7 1 + d 0 7 0 Koska 7 4 = 2401 1831, niin tarvitaan vain potenssit 7 3, 7 2, 7 1 ja7 0, joten (1831) 10 = d 3 7 3 + d 2 7 2 + d 1 7 1 + d 0 1831 = 261, 5714286 = 261 + 4 7 7 d 0 = 4 261 7 = 37, 28571429 = 37 + 2 7 d 1 = 2 37 7 = 5, 2857148286 = 5 + 2 7 d 2 = 2 5 7 = 0 + 5 7 d 3 = 5 (AAB) 13 = (1831) 10 = (5224) 7.

Binääri-, heksa - ja oktaluvut Binääri-, heksa- ja oktaluvut Yleensä muunnokset kahden lukujärjestelmän välillä tehdään 10- järjestelmän kautta. Poikkeus: Heksaluvut eli 16-järjestelmän luvut, oktaluvut eli 8-järjestelmän luvut ja binääriluvut. Koska 16 = 2 4, niin jokaista heksaluvun numeroa vastaa 4 numeroinen binääriluku. Esimerkiksi 7 16 = (0111) 2. Koska 8 = 2 3, niin jokaista oktaluvun numeroa 3 numeroinen binääriluku. Esimerkiksi 7 8 = (111) 2. Silloin muunnokset näiden lukujoukkojen välillä voidaan tehdä suoraan muuntamalla jokainen luvun numero erikseen muuntotaulukoiden avulla. Muuntotaulukot

Esimerkki 5.5. Muunna binääriluku 11111001101010 a)oktaluvuksi b)heksaluvuksi. Ratk.... Esimerkkejä Binäärilukuja käytetään lukujen esittämiseen tietokoneessa. Lukujen esitykset ovat pitkiä, joten okta- ja heksamuotoiset esitykset ovat helpompia käsitellä. Esimerkki 5.6. Muunna a) A7D 16 b)1753 8 binääriluvuksi. Ratk.... Esimerkki 5.7. Muunna oktaluku 176522 8 heksaluvuksi. Ratk....

Yhteenlaskuesimerkki Yhteenlasku eri lukujärjestelmissä tehdään kuten 10-järjestelmässä. Esimerkki 5.8. Laske a)1111 2 + 100010 2 b)8ae 16 + EAE3 16. Ratk.... Lainaaminen vähennyslaskussa Esimerkki 5.9. Olkoot A = 5002 ja B = 3493. Määrää A B. Koulussa opetettiin: 4 9 9 12 \5 \0 \0 2 3 4 9 3 A B = 1 5 0 9 Lainaaminen hankala toteuttaa ohjelmallisesti. Lainausketju voi olla pitkä. Vaatii vähennyslaskun lukujen sisältävien numeroiden edestakaista läpikäymistä. Voidaan tehdä ilman lainaamista. Vähennyslasku ilman lainaamista = Komplementin ottaminen. Komplementin ottamisen lisäksi käytetään yhteenlaskua.

Vähennyslasku ilman lainaamista 10-järjestelmässä Olkoot A ja B kaksi 4- numeroista, positiivisista 10- järjestelmän lukua ja A > B. y = A B = A B + 10000 10000 = A + [ B + 9999 + 1] 10000, missä B = B + 9999 on vähennyslasku ilman lainaamista. Muuntotaulukko B = B + 9999:n on luvun B:n 9 komplementti. Sen numerot voidaan määrätä numero numerolta kiinteän muuntotaulukon (komplementin oton) mukaisesti siten, että B:n numero 0 korvataan 9:llä 1 korvataan 8:lla 2 korvataan 7:llä. 8 korvataan 1:llä 9 korvataan 0:llä otetaan komplementti ja koska lainaamista ei tarvita, vähentäminen joka numeron kohdalla samanlaista.

10:n komplementti Luku B = B + 1 = B + 9999 + 1 = B + 10000 on B:n 10:n komplementti. Koska A B = A + B 10000, niin A + B = A B + 10000. A + B käsittää 4:nä viimeisenä numeronaan erotuksen A B ja 10 000 lisäys aiheuttaa etuykkösen (, jonka 10 000:n vähentäminen poistaa). Jättämällä tämä etuykkönen huomiotta saadaan A B luvusta A + B ilman lainausta. Esimerkki 5.9. (jatkoa) Laske 5002 3493 ilman lainaamista. Ratk. 5002-3493 = 5002-3493 + 10 000-10 000 = 5002+(-3493+9999+1)-10 000 = 5002+(-3493+9999+1)-10 000 = 5002 + (3493 + 1) 10000 = 5002 + 3493 10000 5002 3493 = 5002 + 3493 10000 9999-3493 6506 = 3493 ja 3493 = 3493 + 1 = 6506 + 1 = 6507 5002 + 3493 = 5002 + 6507 = 11509 Ensimmäinen 1 katoaa vähennettäessä 10 000. 5002 3493 = 1509.

Vähennyslasku k-järjestelmässä Lukujärjestelmän kantaluku k. Luvut p - numeroisia (p = numeropaikkojen määrä). Kun A ja B positiivisia ja A > B, y = A B = A + ( B + k p ) k p, missä luku B = B + k p on B:n k-komplementti. Nyt B = B + 1, missä luku B on B:n k 1 komplementti, joka saadaan joko muunnostaulukoilla tai vähentämällä luku B p-numeroisesta luvusta, jonka jokaisella numeropaikalla on numero k 1. Käytännössä B muodostetaan laskemalla aluksi B ja lisäämällä siihen luku 1. Vähennyslasku binääriluvuilla Binäärilukujen vähennyslasku: (A > B, A ja B positiivisia, A :ssa ja B :ssä p = 8 numeropaikkaa): Muodostetaan B:n 1:n komplementti B vaihtamalla B:n numero 0 1:ksi ja B:n numero 1 0:ksi (l. vähennetään B 8- numeroisesta luvusta 11111111). Muodostetaan B laskemalla B + 1(B on B:n 2:n komplementti). Lasketaan A + B. Poistetaan etuykkönen.

Esimerkki 5.10. Suorita vähennyslasku 00010110 2 00001101 2 ilman lainaamista. Ratk. 00001101 = 11110010 ja 00001101 = 00001101 + 1 = 11110011 00010110 + 00001101 = 00010110 + 11110011 = 100001001. A B = 00001001 2 tai lyhyesti 1001 2 Esimerkki 5.11. Laske ilman lainaamista (2101) 4 (1222) 4. Ratk....

Ylivuoto Luvun k p esittäminen vaatii p + 1 merkkiä, joista 1. merkki on 1 ja loput p merkkiä 0:ia. Tapauksessa, missä A ja B ovat positiivisia, A > B, on luku A B:kin positiivinen, joten A B + k p = A + B > k p. ja esittäminen vaatii p + 1 merkkiä, joista ensimmäinen on 1. p + 1:n merkin tarvetta kutsutaan ylivuodoksi (overflow). Kun A > B, niin pyyhkimällä A B :stä ylivuotomerkki pois saadaan erotus. Esityksessä A B = A + B k p vähentäminen k p :llä edustaa juuri ylivuotomerkin poispyyhkimistä. Tapaus A<B Kun A ja B ovat positiivisia ja A < B, on A B < 0 Silloin A B + k p < k p A B:n esittämiseen ei tarvita p + 1:tä merkkiä Ei ylivuotoa Johtopäätös: Kun A + B :ssä on ylivuoto, niin haettu erotus on positiivinen ja erotus saadaan pyyhkimällä ylivuotomerkki pois. Kun A + B :ssä ei ole ylivuotoa on haettu erotus negatiivinen ja erotus saadaan määräämällä A + B :n k:n komplementti (mikä edustaa k p :n vähentämistä A + B :stä) ja sijoittamalla eteen oikea etumerkki. Kun A B, niin A B = A + B k p = (k p (A + B )) = (A + B ) = ((A + B ) + 1)

Esimerkki 5.12 Laske 25 183, kun p = 5, k = 10 (eli käytetään 10- järjestelmän lukuja), Ratk. Koska p = 5, niin 25 = 00025 ja 183 = 00183. 00183 = 99999 00183 = 99816 ja 00183 = 00183 + 1 = 99817. 00025 + 00183 = 00025 + 99817 = 99842 Ei ylivuotoa, joten A B < 0. Luvun 00025 + 00183 9:n komplementti on (00025 + 00183 ) = (99842) = 00157 ja 10:n komplementti (00025 + 00183 ) = 00157 + 1 = 00158. 00025 00183 = (00025 + 00183 ) = 158. Esimerkki 5.13. Laske ilman lainaamista (301) 6 (5001) 6 6-järjestelmässä. Ratk....