Lahutustehe kahendarvusüsteemis. Binaararitmeetika

Aritmeetilised tehted positsioonilistes arvusüsteemides

Vaatame lähemalt aritmeetilisi tehteid kahendarvusüsteemis. Kahendarvusüsteemi aritmeetika põhineb tabelite kasutamisel numbrite liitmiseks, lahutamiseks ja korrutamiseks. Aritmeetilised operandid asuvad tabeli ülemises reas ja esimeses veerus ning tulemused on veergude ja ridade ristumiskohas:

Vaatame iga toimingut üksikasjalikumalt.

Lisand. Binaarne liitmistabel on äärmiselt lihtne. Ainult ühel juhul, kui lisamine toimub 1+1, toimub ülekanne kõige olulisemale numbrile. ,

Lahutamine. Lahutustehte sooritamisel lahutatakse absoluutväärtuses suuremast arvust alati väiksem arv ja asetatakse vastav märk. Lahutamistabelis tähendab 1 koos tulbaga laenu kõige kõrgemal tasemel.

Korrutamine. Korrutamistehe tehakse korrutustabeli abil vastavalt kümnendarvusüsteemis kasutatavale tavapärasele skeemile, korrutise järjestikuse korrutamisega kordaja järgmise numbriga.

Jaoskond. Jagamistehte sooritatakse kasutades algoritmi, mis sarnaneb kümnendarvusüsteemis jagamistehte sooritamise algoritmiga.

Teenuse eesmärk. Veebikalkulaator on mõeldud kahendarvude lisamiseks edasi-, tagurpidi- ja täiendkoodidesse.

Selle kalkulaatoriga kasutatakse ka järgmist:
Arvude teisendamine kahend-, kuueteistkümnend-, kümnend- ja kaheksandsüsteemiks
Kahendarvude korrutamine
Ujukoma formaat
Näide nr 1. Esitage arvu 133,54 ujukoma kujul.
Lahendus. Esitame arvu 133,54 normaliseeritud eksponentsiaalsel kujul:
1,3354*102 = 1,3354*exp 10 2
Arv 1,3354*exp 10 2 koosneb kahest osast: mantiss M=1,3354 ja eksponent exp 10 =2
Kui mantiss on vahemikus 1 ≤ M Arvu esitamine denormaliseeritud eksponentsiaalsel kujul.
Kui mantiss on vahemikus 0,1 ≤ M Esitame arvu denormaliseeritud eksponentsiaalsel kujul: 0,13354*exp 10 3

Näide nr 2. Esitage kahendarvu 101.10 2 normaliseeritud kujul, mis on kirjutatud 32-bitises IEEE754 standardis.
Tõe tabel


Piirmäärade arvutamine

Aritmeetika kahendarvusüsteemis

Aritmeetilised toimingud kahendsüsteemis sooritatakse samamoodi nagu kümnendsüsteemis. Kuid kui kümnendarvusüsteemis toimub ülekanne ja laenamine kümne ühiku võrra, siis kahendarvusüsteemis kahe ühiku võrra. Tabelis on toodud liitmise ja lahutamise reeglid kahendarvusüsteemis.
  1. Kahe ühiku lisamisel kahendarvusüsteemis on see bit 0 ja ühik kantakse üle kõige olulisemale bitile.
  2. Nullist ühe lahutamisel laenatakse üks kõrgeimast numbrist, kus on 1. Selles numbris hõivatud ühik annab kaks ühikut numbris, kus tegevus arvutatakse, ja ühe kõigis vahepealsetes numbrites.

Numbrite lisamine, võttes arvesse nende märke masinal, on järgmiste toimingute jada:

  • algsete numbrite teisendamine määratud koodiks;
  • koodide bitipõhine liitmine;
  • saadud tulemuse analüüs.
Kui sooritades toimingut vastupidises (modifitseeritud vastupidises) koodis, kui liitmise tulemusena ilmub märgibitti kandeühik, lisatakse see summa madalat järku bitti.
Tehte sooritamisel kahe komplemendi (modifitseeritud kahe komplement) koodis, kui liitmise tulemusena ilmub märgibitis kandeüksus, jäetakse see kõrvale.
Lahutamistehe arvutis sooritatakse liitmise teel vastavalt reeglile: X-Y=X+(-Y). Edasised toimingud tehakse samamoodi nagu lisamistoimingu puhul.

Näide nr 1.
Antud: x=0,110001; y= -0,001001, lisage vastupidises vormingus muudetud kood.

Antud: x=0,101001; y= -0,001101, lisage täiendav muudetud kood.

Näide nr 2. Lahendage näiteid kahendarvude lahutamise kohta, kasutades 1 komplemendi ja tsüklilise kande meetodit.
a) 11-10.
Lahendus.
Kujutagem ette numbreid 11 2 ja -10 2 vastupidises koodis.

Kahendarvu 0000011 vastastikune kood on 0,0000011

Liidame kokku numbrid 00000011 ja 11111101

7 6 5 4 3 2 1 0
1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0

7 6 5 4 3 2 1 0
1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0

2. numbris (1 + 1 = 10) tekkis ülevool. Seetõttu kirjutame 0 ja liigume 1 3. numbrini.
7 6 5 4 3 2 1 0
1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0

7 6 5 4 3 2 1 0
1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0 0

7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0 0 0

Selle tulemusena saame:
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 0 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 0 0 0

Märgibitist on toimunud ülekanne. Lisame selle (s.o 1) saadud arvule (seega teostades tsüklilise ülekande protseduuri).
Selle tulemusena saame:
7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1

Liitmise tulemus: 00000001. Teisendame selle kümnendesituseks. Täisarvulise osa tõlkimiseks peate korrutama numbri numbri vastava numbriastmega.
00000001 = 2 7 *0 + 2 6 *0 + 2 5 *0 + 2 4 *0 + 2 3 *0 + 2 2 *0 + 2 1 *0 + 2 0 *1 = 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 = 1
Liitmise tulemus (kümnendmärk): 1

b) 111-010 Kujutame ette numbreid 111 2 ja -010 2 vastupidises koodis.
Positiivse numbri pöördkood on sama mis edasisuunamiskood. Negatiivse arvu korral asendatakse kõik numbri numbrid nende vastanditega (1 x 0, 0 x 1) ja märginumbrisse sisestatakse ühik.
Kahendarvu 0000111 vastastikune kood on 0,0000111
Kahendarvu 0000010 vastastikune kood on 1.1111101
Liidame kokku numbrid 00000111 ja 11111101
0. numbris (1 + 1 = 10) tekkis ületäitumine. Seetõttu kirjutame 0 ja liigume 1 1. numbrini.

7 6 5 4 3 2 1 0
1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0

1. numbris (1 + 1 = 10) tekkis ületäitumine. Seetõttu kirjutame 0 ja liigume 1 2. numbrini.
7 6 5 4 3 2 1 0
1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0

2. numbris (1 + 1 + 1 = 11) tekkis ülevool. Seetõttu kirjutame 1 ja liigume 1 3. numbrini.
7 6 5 4 3 2 1 0
1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
1 0 0

3. numbris (1 + 1 = 10) tekkis ülevool. Seetõttu kirjutame 0 ja liigume 1 neljanda numbrini.
7 6 5 4 3 2 1 0
1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 1 0 0

4. bitis (1 + 1 = 10) tekkis ületäitumine. Seetõttu kirjutame 0 ja liigume 1 5. numbrini.
7 6 5 4 3 2 1 0
1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 1 0 0

5. numbris (1 + 1 = 10) tekkis ülevool. Seetõttu kirjutame 0 ja liigume 1 kuuenda numbrini.
7 6 5 4 3 2 1 0
1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 1 0 0

6. bitis (1 + 1 = 10) tekkis ületäitumine. Seetõttu kirjutame 0 ja liigume 1 7. numbrini.
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 0 1 0 0

7. bitis tekkis ületäitumine (1 + 1 = 10). Seetõttu kirjutame 0 ja liigume 1 8. numbrini.
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 1 0 0

Selle tulemusena saame:
7 6 5 4 3 2 1 0
1 1 1 1 1 1 1
0 0 0 0 0 1 1 1
1 1 1 1 1 1 0 1
0 0 0 0 0 1 0 0

Märgibitist on toimunud ülekanne. Lisame selle (s.o 1) saadud arvule (seega teostades tsüklilise ülekande protseduuri).
Selle tulemusena saame:
7 6 5 4 3 2 1 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 1 0 1

Lisamise tulemus: 00000101
Saime numbri 00000101. Terve osa teisendamiseks tuleb arvu number korrutada vastava numbriastmega.
00000101 = 2 7 *0 + 2 6 *0 + 2 5 *0 + 2 4 *0 + 2 3 *0 + 2 2 *1 + 2 1 *0 + 2 0 *1 = 0 + 0 + 0 + 0 + 0 + 4 + 0 + 1 = 5
Liitmise tulemus (kümnendmärk): 5

Binaarsete ujukoma reaalarvude liitmine

Arvutis saab mis tahes arvu esitada ujukoma formaadis. Ujukoma formaat on näidatud joonisel:


Näiteks ujukomavormingus numbri 10101 saab kirjutada järgmiselt:


Arvutid kasutavad arvu kirjutamiseks normaliseeritud vormi, kus kümnendkoha asukoht antakse alati enne mantissi märgilist numbrit, s.t. tingimus on täidetud:
b -1 ≤|M| Normaliseeritud arv - See on arv, mille kümnendkoha järel on oluline number (st kahendarvusüsteemis 1). Normaliseerimise näide:
0,00101*2 100 =0,101*2 10
111,1001*2 10 =0,111001*2 101
0,01101*2 -11 =0,1101*2 -100
11,1011*2 -101 =0,11011*2 -11

Ujukomanumbrite lisamisel teostatakse järjekorra joondamine kõrgema järjekorra suunas:

Ujukomaarvude lisamise algoritm:

  1. Tellimuste joondamine;
  2. Mantisside lisamine muudetud lisakoodis;
  3. Tulemuse normaliseerimine.

Näide nr 4.
A = 0,1011 * 2 10, B = 0,0001 * 2 11
1. Tellimuste joondamine;
A=0,01011*2 11, B=0,0001*2 11
2. Mantisside lisamine täiendavasse muudetud koodi;
MA lisamod. =00.01011
MB lisamod. =00.0001
00,01011
+ 00,00010
=
00,01101
A+B=0,01101*2 11
3. Tulemuse normaliseerimine.
A+B=0,1101*2 10

Näide nr 3. Kirjutage kahendarvusüsteemis kümnendarv ja lisage kahendarvusüsteemis kaks arvu.

Ülesanded väärtuste määramiseks erinevates arvusüsteemides ja nende alustes

1. harjutus. Tähemärkide @, $, &, % kodeerimiseks kasutatakse kahekohalisi järjestikuseid kahendnumbreid. Esimene märk vastab numbrile 00. Neid märke kasutades kodeeriti järgmine jada: $%&&@$. Dekodeerige see jada ja teisendage tulemus kuueteistkümnendsüsteemiks.

Lahendus.

1. Võrdleme kahendnumbreid nende kodeeritud tähemärkidega:
00 — @, 01 — $, 10 — &, 11 — %

3. Teisendage kahendarvud kuueteistkümnendsüsteemiks:
0111 1010 0001 = 7A1

Vastus. 7A1 16.

2. ülesanne. Aias on 100 x viljapuud, millest 33 x on õunapuud, 22 x ...
– pirnid, 16 x – ploomid, 17 x – kirsid. Mis on arvusüsteemi (x) alus.

Lahendus.

1. Pange tähele, et kõik terminid on kahekohalised numbrid. Mis tahes arvusüsteemis saab neid esitada järgmiselt:
a * x 1 + b * x 0 = ax + b, kus a ja b on arvu vastavate numbrite numbrid.
Kolmekohalise numbri puhul oleks see järgmine:
a * x 2 + b * x 1 + c * x 0 = ax 2 + bx + c

2. Probleemi tingimus on:
33 x + 22 x + 16 x + 17 x = 100 x
Asendame arvud valemitega:
3x + 3 + 2x +2 + 1x + 6 + 1x + 7 = 1x 2 + 0x + 0
7x + 18 = x 2

3. Lahendage ruutvõrrand:
-x2 + 7x + 18 = 0
D = 7 2 – 4 * (-1) * 18 = 49 + 72 = 121. D ruutjuur on 11.
Ruutvõrrandi juured:
x = (-7 + 11) / (2 * (-1)) = -2 või x = (-7 - 11) / (2 * (-1)) = 9

4. Negatiivne arv ei saa olla arvusüsteemi aluseks. Seetõttu saab x olla võrdne ainult 9-ga.

Vastus. Numbrisüsteemi nõutav alus on 9.

3. ülesanne. Mõne alusega arvusüsteemis kirjutatakse kümnendarvuks 12 110. Leia see alus.

Lahendus.

Kõigepealt kirjutame arvu 110 läbi valemi, mis võimaldab arvude kirjutamist positsioonilistes arvusüsteemides, et leida väärtus kümnendarvusüsteemis, ja seejärel leiame baasi toore jõu abil.

110 = 1 * x 2 + 1 * x 1 + 0 * x 0 = x 2 + x

Peame saama 12. Proovime 2: 2 2 + 2 = 6. Proovime 3: 3 2 + 3 = 12.

See tähendab, et arvusüsteemi alus on 3.

Vastus. Numbrisüsteemi nõutav alus on 3.

Kuueteistkümnend- ja kaheksandarvusüsteemid

1. harjutus. Milline number kuueteistkümnendsüsteemis vastab arvule 11000101?

Lahendus.

Kahendarvu teisendamisel kuueteistkümnendarvuks jagatakse esimene neljakohalisteks rühmadeks, alustades lõpust. Kui numbrite arv ei jagu neljaga, siis esimesele neljale eelnevad nullid. Igal neljal on kordumatu vastavus ühele numbrile kuueteistkümnendsüsteemis.

11000101 = 1100 0101 = C5 16

Pole vaja, et silme ees oleks kirjavahetuse tabel. Esimese 15 numbri binaarloendust saab teha peast või järjestikku üles kirjutada. Ei tasu unustada, et kümnendsüsteemis 10 vastab A-le kuueteistkümnendsüsteemis, 11 - B, 12 - C, 13 - D, 14 - E, 15 - F.

Vastus. 11000101 = C5 16

2. ülesanne. Arvutage kahendarvude x ja y summa, kus x = 10100 ja y = 10101. Väljendage tulemused kaheksandarvuna.

Lahendus.

Lisame kaks numbrit. Kahend- ja kümnendaritmeetika reeglid on samad:

Kahendarvu teisendamisel kaheksandarvuks jagatakse esimene kolmekohalisteks rühmadeks, alustades lõpust. Kui numbrite arv ei jagu kolmega, siis esimesele kolmele eelnevad nullid:

Vastus. Kaheksandarvude süsteemis esitatud kahendarvude 10100 ja 10101 summa on 51.

Teisendamine kahendarvusüsteemi

1. harjutus. Mis on kahendarvuna arv 37?

Lahendus.

Saate teisendada, jagades 2-ga ja kombineerides jäägid vastupidises järjekorras.

Teine võimalus on lagundada arv kahe astmete summaks, alustades suurimast, mille arvutatud tulemus on etteantud arvust väiksem. Teisendamisel tuleks arvu puuduvad astmed asendada nullidega:

37 10 = 32 + 4 + 1 = 2 5 + 2 2 + 2 0 = 1 * 2 5 + 0 * 2 4 + 0 * 2 3 + 1 * 2 2 + 0 * 2 1 + 1 * 2 0 = 100101

Vastus. 37 10 = 100101 2 .

2. ülesanne. Mitu olulist nulli on kümnendarvu 73 kahendmärgistuses?

Lahendus.

Jagame arvu 73 kahe astmete summaks, alustades suurimast ja seejärel korrutades puuduvad astmed nullidega ning olemasolevad astmed ühega:

73 10 = 64 + 8 + 1 = 2 6 + 2 3 + 2 0 = 1 * 2 6 + 0 * 2 5 + 0 * 2 4 + 1 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 1001001

Vastus. Kümnendarvu 73 kahendkujul on neli olulist nulli.

3. ülesanne. Arvutage arvude x ja y summa, kui x = D2 16, y = 37 8. Esitage tulemus kahendarvusüsteemis.

Lahendus.

Tuletage meelde, et kuueteistkümnendsüsteemi iga number koosneb neljast kahendnumbrist ja kaheksandarvu iga number kolmest:

D2 16 = 1101 0010
37 8 = 011 111

Liidame saadud arvud kokku:

Vastus. Arvude D2 16 ja y = 37 8 summa, mis on esitatud kahendarvusüsteemis, on 11110001.

4. ülesanne. Arvestades: a= D7 16, b= 331 8 . Milline number c, mis on kirjutatud kahendarvusüsteemis, vastab tingimusele a< c < b ?

  1. 11011001
  2. 11011100
  3. 11010111
  4. 11011000

Lahendus.

Teisendame arvud kahendarvusüsteemi:

D7 16 = 11010111
331 8 = 11011001

Kõigi numbrite neli esimest numbrit on samad (1101). Seetõttu on võrdlust lihtsustatud nelja alumise numbri võrdlemisega.

Loendi esimene number on võrdne numbriga b, seega ei sobi.

Teine number on suurem kui b. Kolmas number on a.

Sobib ainult neljas number: 0111< 1000 < 1001.

Vastus. Neljas variant (11011000) vastab tingimusele a< c < b .

Teisendamine kümnendarvusüsteemi

1. harjutus. Millisele arvule 24 16 vastab kümnendsüsteemis?

Lahendus.

24 16 = 2 * 16 1 + 4 * 16 0 = 32 + 4 = 36

Vastus. 24 16 = 36 10

2. ülesanne. On teada, et X = 12 4 + 4 5 + 101 2. Mis on X väärtus kümnendarvusüsteemis?

Lahendus.


12 4 = 1 * 4 1 + 2 * 4 0 = 4 + 2 = 6
4 5 = 4 * 5 0 = 4
101 2 = 1 * 2 2 + 0 * 2 1 + 1 * 2 0 = 4 + 0 + 1 = 5
Leidke arv: X = 6 + 4 + 5 = 15

Vastus. X = 15 10

3. ülesanne. Arvutage summa 10 2 + 45 8 + 10 16 väärtus kümnendsüsteemis.

Lahendus.

Teisendame iga termini kümnendarvude süsteemi:
10 2 = 1 * 2 1 + 0 * 2 0 = 2
45 8 = 4 * 8 1 + 5 * 8 0 = 37
10 16 = 1 * 16 1 + 0 * 16 0 = 16
Summa on: 2 + 37 + 16 = 55

Vastus. 55 10

Aritmeetilised tehted kahendarvusüsteemis

Numbrisüsteemid

Teema number:

Kahendarvusüsteemis tehakse aritmeetikatehteid samade reeglite järgi, mis kümnendarvusüsteemis, sest nad on mõlemad positsioonilised (koos kaheksand-, kuueteistkümnendsüsteemiga jne).

Lisand

Ühekohaliste kahendarvude liitmine toimub järgmiste reeglite kohaselt:

Viimasel juhul täitub kahe ühe liitmisel madalat järku number üle ja 1 kantakse üle kõrgema järgu numbriks. Ületäitumine toimub siis, kui summa on võrdne arvusüsteemi alusega (antud juhul on see arv 2) või sellest suurem (kahendarvusüsteemi puhul pole see oluline).

Näiteks liidame suvalised kaks kahendarvu:

Lahutamine

Ühekohaliste kahendarvude lahutamine toimub vastavalt järgmistele reeglitele:

0 - 1 = (laen kõrgelt) 1

Korrutamine

Ühekohaliste kahendarvude korrutamine toimub vastavalt järgmistele reeglitele:

Jaoskond

Jagamine toimub samamoodi nagu kümnendarvusüsteemis:

Näide 1. Leidke X kui Võrdsuse vasaku poole teisendamiseks kasutame järjestikku De Morgani seadust loogilise liitmise ja topelteituse seadust: Vastavalt distributsiooniseadusele loogilise liitmise jaoks: Vastavalt kolmanda ja kolmanda välistamise seadusele konstantide välistamise seadus: Võrdsustame saadud vasaku külje paremaga: X = B Lõpuks saame: X = B. Näide 2. Lihtsusta loogilist avaldist Kontrollige lihtsustuse õigsust tõesuse tabelite abil originaali ja tulemuse jaoks loogiline väljendus. Vastavalt loogilise liitmise üldise inversiooni seadusele (de Morgani esimene seadus) ja topelteituse seadusele: Vastavalt distributsiooniseadusele loogilise liitmise korral: Vastavalt vastuolu seadusele: Vastavalt idempotentsuse seadusele asendame väärtused ​ja kasutades kommutatsiooniseadust ja rühmitades termineid, saame: Välistamisseaduse järgi (liimimine) Asendage väärtused ja saame: Vastavalt loogilise liitmise konstantide välistamise seadusele ja idempotentsuse seadusele: Asendage väärtused ja saada: Vastavalt loogilise korrutamise jaotusseadusele: Kolmanda välistamise seaduse järgi: Asendage väärtused ja lõpuks saate: 2 Arvuti loogilised alused Diskreetne muundur, mis pärast töötlemist sisend binaarsignaale, toodab väljundsignaali, mis on ühe loogiliste operatsioonide väärtus, nimetatakse loogiliseks elemendiks. Allpool on põhiliste loogiliste elementide sümbolid (ahelad), mis rakendavad loogilist korrutamist (konjunktor), loogilist liitmist (disjunktor) ja eitamist (inverter). Riis. 3.1. Konjunktor, disjunktor ja inverter Arvutiseadmed (lisajad protsessoris, mäluelemendid RAM-is jne) on ehitatud põhiliste loogiliste elementide alusel. Näide 3. Koostage antud loogikafunktsiooni F(A, B) = =B&АÚB&A jaoks loogikalülitus. Ehitus peab algama loogilisest toimingust, mis tuleb sooritada viimasena. Sel juhul on selline tehe loogiline liitmine, seetõttu peab loogikaahela väljundis olema disjunktor. Sellele antakse signaale kahest pistikust, mis omakorda on varustatud ühe tavalise ja ühe inverteeritud sisendsignaaliga (inverteritest). Näide 4. Loogikalülitusel on kaks sisendit X ja Y. Määrake loogikafunktsioonid F1(X,Y) ja F2(X,Y), mis realiseeritakse selle kahes väljundis. Funktsioon F1(X,Y) realiseeritakse esimese konjunktori väljundis, st F1(X,Y) = X&Y. Samal ajal juhitakse pistiku signaal inverteri sisendisse, mille väljundis realiseeritakse X&Y signaal, mis omakorda suunatakse teise pistiku ühte sisendisse. Disjunktori signaal Xv Y suunatakse teise konjunktori teise sisendisse, seega funktsioon F2(X,Y) = X&Y&,(XvY). Vaatleme kahe n-bitise kahendarvu liitmise skeemi. I-ro numbri numbrite liitmisel lisatakse ai ja bi, samuti Pi-1 - ülekanne i-1 numbrist. Tulemuseks on st – summa ja Pi – ülekanne kõige olulisema numbrini. Seega on ühebitine binaarsummer seade, millel on kolm sisendit ja kaks väljundit. Näide 3.15. Koostage kahendarvude liitmise tabeli abil ühebitise binaarsummaja tõetabel. Päästik. Trigereid kasutatakse teabe salvestamiseks arvuti RAM-i, samuti protsessori sisemistes registrites. Päästik võib olla ühes kahest stabiilsest olekust, mis võimaldab teil meeles pidada, salvestada ja lugeda 1 biti teavet. Lihtsaim päästik on .RS-päästik. See koosneb kahest NOR-väravast, mis rakendavad loogikafunktsiooni F9 (vt tabel 3.1). Elementide sisendid ja väljundid on ühendatud rõnga abil: esimese väljund on ühendatud teise sisendiga ja teise väljund esimese sisendiga. Päästikul on kaks sisendit S (ingliskeelsest komplektist - paigaldamine) ja I (ingliskeelsest lähtestusest - lähtestamine) ning kaks väljundit Q (otsene) ja Q (inverse). Riis. 2 RS-flip-flopi loogikalülitus Näide 3.16. Koostage tabel, mis kirjeldab RS-flip-flopi sisendite ja väljundite olekut. Kui sisendid võtavad vastu signaale R = 0 ja S = 0, siis on klapp salvestusrežiimis, eelnevalt seatud väärtused salvestatakse väljunditesse Q ja Q. Kui sättesisendis S võetakse lühiajaliselt vastu 1 signaal, läheb klapp olekusse 1 ja pärast seda, kui sisendi S signaal muutub 0-ks, säilitab kiger selle oleku, st salvestada 1. Kui sisendile R rakendatakse 1, läheb flip-flop olekusse 0. Loogilise rakendamine mõlemale sisendile S ja R võib viia mitmetähendusliku tulemuseni, seetõttu on selline sisendsignaalide kombinatsioon keelatud. Ülesanded iseseisvaks täitmiseks 1. Kahe muutuja loogilisi funktsioone on 16 (vt tabel 3.1). Ehitage nende loogikaahelad põhiliste loogikaväravate abil: konjunktor, disjunktor ja inverter. 2. Tõesta, et näites 3.10 vaadeldud loogikalülitus on ühebitine binaarne poolliitja (madalat järku bitti kannet ei võeta arvesse). 3. Tõesta tõetabeli koostamisel, et loogiline funktsioon P = (A&B)v(A&,P0)v(B&P0) määrab kahendarvude liitmisel ülekande kõige olulisemale numbrile (A ja B on liikmed, Po on ülekanne kõige vähemtähtsast numbrist). 4. Tõesta tõepäratabeli koostamisel, et loogikafunktsioon S = (AvBvP0)&Pv(A&.B&P0) määrab kahendarvude liitmisel summa (A ja B on liikmed, Po on ülekanne madalat järku numbrilt). 5. Koostage ühebitise binaarsummaja loogiline skeem. Kui palju põhilisi loogikaväravaid on vaja 64-bitise kahendarvu liitja rakendamiseks? 6. Mitu põhilist loogilist elementi moodustavad kaasaegse 64 MB mahuga arvuti RAM-i? 1. Kirjutage numbrid üles laiendatud kujul: a) A8=143511; d) A10 = 143,511; 6)A2=100111; e) A8 = 0,143511; c)A16=143511; e)A1e=1AZ,5C1. 2. Kirjutage ahendatud kujul üles järgmised arvud: a) A10=9-101+1*10+5"10-1+3-10~2; b) A16=A-161+1-16°+7- 16" 1+5-16~2. 3. Kas numbrid on õigesti kirjutatud vastavates numbrisüsteemides: a) A10 = A,234; c) A16 = 456,46; b) A8 = -5678; d)A2=22,2? 4. Millise minimaalse baasiga on arvusüsteem, kui sellesse on kirjutatud arvud 127, 222, 111? Määrake leitud arvusüsteemis nende arvude kümnendekvivalent. 5. Mis on arvude 101012, 101018 1010116 kümnendekvivalent? 6. Kolmekohaline kümnendnumber lõpeb numbriga 3. Kui seda numbrit nihutada kaks numbrit vasakule, st sellega algab uue numbri salvestamine, on see uus number ühe võrra suurem kui kolm korda suurem kui algne arv. number. Leidke algne number. 2.22 Kuuekohaline kümnendarv algab vasakult numbriga 1. Kui see number nihutatakse vasakult esimesest kohast paremale viimasele kohale, siis on saadud arvu väärtus kolm korda suurem kui originaal. Leidke algne number. 2.23 Milline arvudest 1100112, 1114, 358 ja 1B16 on: a) suurim; b) kõige väiksem? 2.27 Kas on kolmnurka, mille küljepikkused on väljendatud arvudega 12g, 1116 ja 110112? 2.28.Milline on suurim kümnendarv, mida saab kirjutada kolmekohalisena kahend-, kaheksand- ja kuueteistkümnendsüsteemis? 2.29 "Kergelised" küsimused. Millal 2x2=100? Millal 6x6=44? Millal 4x4=20? 2.30. Kirjutage üles täisarvud, mis kuuluvad järgmistesse arvvahemikesse: a) ; b) ; V) . 2.31.Klassis on 11 112 tüdrukut ja 11 002 poissi. Kui palju õpilasi klassis on? 2.32.Klassis õpib 36 õpilast, kellest 21 on tüdrukud ja 15 poisid. Millises arvusüsteemis õpilasi loeti? 2. 33. Aias on 100q viljapuid, millest õunapuud 33q, pirnid 22q, ploomid 16q ja kirsid 5q. Millises arvusüsteemis puid loetakse? 2.34.Õunu oli 100q. Pärast seda, kui igaüks neist oli pooleks lõigatud, olid pooled 1000q. Millise alusega need arvusüsteemis loeti? 2.35.Mul on 100 venda. Noorim on 1000-aastane ja vanim 1111-aastane. Vanim on klassis 1001. Kas see võiks olla võimalik? 2.36 Kunagi oli tiik, mille keskel kasvas üks vesiroosi leht. Iga päevaga kahekordistus selliste lehtede arv ja kümnendal päeval oli kogu tiigi pind juba liilialehtedega täidetud. Mitu päeva kulus poole tiigi lehtedega täitmiseks? Kui palju lehti oli pärast üheksandat päeva? 2.37.Valides arvu 2 astmed, mis annavad kokku antud arvu, teisenda binaararvusüsteemi järgmised arvud: a) 5; kell 12; e) 32; b) 7; d) 25; f) 33. Kontrollige tõlke õigsust programmi Advanced Converter abil. 2.3. Arvude teisendamine ühest numbrisüsteemist teise 2.3.1. Täisarvude tõlkimine ühest arvusüsteemist teise Saate koostada algoritmi täisarvude teisendamiseks süsteemist alusega p süsteemi alusega q: 1. Avaldage uue arvusüsteemi alus algse arvusüsteemi numbrites ja sooritage kõik järgnevad toimingud algses numbrisüsteemis. 2. Jagage antud arv ja saadud täisarvu jagatised järjekindlalt uue arvusüsteemi alusega, kuni saame jagatise, mis on jagajast väiksem. 3. Saadud jäägid, mis on uues numbrisüsteemis arvude numbrid, viiakse vastavusse uue numbrisüsteemi tähestikuga. 4. Koostage arv uues numbrisüsteemis, kirjutades see üles alates viimasest jäägist. Näide 2.12. Teisenda kümnendarv 17310 kaheksandsüsteemiks: ■ Saame: 17310=2558. Näide 2.13. Teisenda kümnendarvu 17310 kuueteistkümnendsüsteemiks: - Saame: 17310=AD16. Näide 2.14. Teisenda kümnendarv 1110 kahendarvusüsteemiks. Saame: 111O=10112. Näide 2.15. Mõnikord on mugavam kirjutada tõlkealgoritm tabeli kujul. Teisendame kümnendarvu 36310 kahendarvuks. 2.3.2. Murdarvude teisendamine ühest arvusüsteemist teise Saad koostada algoritmi õige murdu alusega p teisendamiseks alusega q murduks: 1. Avaldage uue arvusüsteemi alus algse arvusüsteemi numbrites ja sooritage kõik järgnevad. toimingud algses numbrisüsteemis. 2. Korrutage antud arv ja saadud korrutised järjekindlalt uue süsteemi alusega, kuni korrutise murdosa võrdub nulliga või on saavutatud arvude esitamise nõutav täpsus. 3. Korrutistest saadud täisarvulised osad, mis on uues numbrisüsteemis arvu numbrid, viiakse vastavusse uue numbrisüsteemi tähestikuga. 4. Koostage uues arvusüsteemis arvu murdosa, alustades esimese korrutise täisarvust. Näide 2.16. Teisendage arv 0,6562510 kaheksandarvude süsteemiks. Näide 2.17. Teisendage arv 0,6562510 kuueteistkümnendsüsteemiks. Näide 2.18. Teisendage kümnendmurd 0,562510 kahendarvusüsteemi. Näide 2.19. Teisenda kümnendmurd 0,710 kahendarvusüsteemiks. Ilmselgelt võib see protsess jätkuda lõputult, andes järjest uusi märke arvu 0,710 kahendekvivalendi kujutises. Niisiis, nelja sammuga saame arvu 0,10112 ja seitsme sammuga arvu 0,10110012, mis on arvu 0,710 täpsem esitus binaarselt jne. Selline lõputu protsess lõpetatakse teatud etapis, kui arvatakse, et on saavutatud arvude esituse nõutav täpsus. 2.3.3. Suvaliste arvude tõlkimine Suvaliste arvude, st täisarvu ja murdosa sisaldavate arvude tõlkimine toimub kahes etapis. Kogu osa tõlgitakse eraldi ja murdosa eraldi. Saadud arvu lõplikul salvestamisel eraldatakse täisarvuline osa murdosast. Näide 2.20. Teisendage arv 17.2510 kahendarvusüsteemiks. Terve osa tõlkimine: Murdosa tõlkimine: Näide 2.21. Teisendage arv 124.2510 kaheksandikuks. 2.3.4. Arvude teisendamine arvusüsteemist, mille alus on 2, arvusüsteemi, mille alus on 2n ja tagasi Täisarvude teisendamine – kui q-arvusüsteemi aluseks on 2 aste, siis q-arvarvusüsteemist arvude teisendamine kahendarvuks ja tagasi saab läbi viia lihtsamate meetodite reeglite abil. Täisarvulise kahendarvu kirjutamiseks arvusüsteemi alusega q = 2", peate: 1. Jagama kahendarvu paremalt vasakule n-kohalisteks rühmadeks. 2. Kui viimases vasakpoolses rühmas on n vähem numbrit, siis tuleb vajalikule arvule numbritele lisada vasakul olevad nullid 3. Vaatleme iga rühma n-bitise kahendarvuna ja kirjutame vastava numbriga numbrisüsteemi alusega q = 2p Näide 2.22. Arv 1011000010001100102 teisendatakse kaheksandarvude süsteemi. Jagame arvu paremalt vasakule kolmkõladeks ja igaühe alla kirjutame vastava kaheksandkoha: Saame algarvu kaheksandesituse: 5410628. Näide 2.23. Teisendame arvu 10000000001111100001112 kuueteistkümnendsüsteemiks. Jagame arvu paremalt vasakule tetraadideks ja igaühe alla kirjutame vastava kuueteistkümnendkohalise numbri: Saame algse arvu kuueteistkümnendsüsteemi esituse: 200F8716. Murdarvude teisendamine. Murdarvulise kahendarvu kirjutamiseks arvusüsteemis, mille alus on q = 2", peate: 1. Jagama kahendarvu vasakult paremale n-kohalisteks rühmadeks. 2. Kui viimases parempoolses rühmas on vähem n numbrit, siis tuleb seda paremal pool täiendada nullidega kuni vajaliku arvu numbriteni 3. Vaatleme iga rühma n-bitise kahendarvuna ja kirjutame vastava numbriga arvusüsteemi alusega q = 2p Näide 2.24 Teisendame arvu 0,101100012 oktaalarvude süsteemiks Jagame vasakul oleva arvu kolmkõladeks ja kirjutame igaühe alla vastava kaheksandkoha: Saame algarvu kaheksandkuju: 0,5428 Näide 2.25 Teisendame arvu 0,1000000000112 kuueteistkümnendsüsteemiks.Jagame arvu vasakult paremale tetraadideks ja kirjutame iga alla vastava kuueteistkümnendkoha: Saame algarvu kuueteistkümnendkujulise esituse: 0,80316 Suvaliste arvude tõlkimine järjekorras suvalise kahendarvu kirjutamiseks arvusüsteemi alusega q - 2n on vaja: [ 1. Jagage antud kahendarvu täisarv paremalt vasakule ja murdosa - vasakult paremale n-kohalisteks rühmadeks. 2. Kui viimases vasak- ja/või parempoolses rühmas on vähem kui n numbrit, siis tuleb neid vasakul ja/või paremal täiendada nullidega kuni vajaliku arvu numbriteni. 3. Käsitlege iga rühma n-bitise kahendarvuna ja kirjutage see koos vastava numbriga arvusüsteemi, mille alus on q = 2n. Näide 2.26. Teisendame arvu 111100101.01112 kaheksandarvude süsteemiks. Jagame arvu täis- ja murdosad kolmikuteks ja kirjutame igaühe alla vastava kaheksandkoha: Saame algarvu kaheksandkuju: 745.34S. Näide 2.27. Teisendame arvu 11101001000.110100102 kuueteistkümnendsüsteemiks. Jagame arvu täis- ja murdosa tetraadideks ja kirjutame igaühe alla vastava kuueteistkümnendkoha: Saame algarvu kuueteistkümnendsüsteemi esituse: 748,D216. Arvude teisendamine arvusüsteemidest, mille alus on q = 2, kahendsüsteemi. Arvusüsteemis alusega q = 2 kirjutatud suvalise arvu teisendamiseks kahendarvusüsteemiks tuleb selle arvu iga number asendada n-ga -kohaline ekvivalent kahendarvusüsteemis . Näide 2.28. Teisendame kuueteistkümnendsüsteemi arvu 4AC351b kahendarvusüsteemiks. Algoritmi järgi: i Saame: 10010101100001101012. Ülesanded iseseisvaks täitmiseks 2.38. Täida tabel, mille igale reale tuleb erinevates arvusüsteemides kirjutada sama täisarv. 2.39. Täitke tabel, mille igale reale tuleb erinevates arvusüsteemides kirjutada sama murdarv. 2.40. Täitke tabel, mille igale reale tuleks erinevates arvusüsteemides kirjutada sama suvaline arv (arv võib sisaldada nii täis- kui ka murdosa). 2.4. Aritmeetilised tehted positsioonilistes arvusüsteemides

Aritmeetilised tehted kahendarvusüsteemis.


Näide 2.29. Vaatame mõnda näidet kahendarvude lisamisest:

Lahutamine. Lahutustehte sooritamisel lahutatakse absoluutväärtuses suuremast arvust alati väiksem arv ja asetatakse vastav märk. Lahutamistabelis tähendab 1 koos tulbaga laenu kõige kõrgemal tasemel.


Näide 2.31. Vaatame mõnda näidet kahendarvude korrutamisest:

Näete, et korrutamine taandub korrutise ja liitmise nihkele.

Jaoskond. Jagamistehte sooritatakse kasutades algoritmi, mis sarnaneb kümnendarvusüsteemis jagamistehte sooritamise algoritmiga.


Liitmine teistes numbrisüsteemides. Allpool on kaheksandarvude süsteemi liitmistabel:

2.42. Järjesta aritmeetiliste tehete märgid nii, et kahendsüsteemis oleksid tõesed järgmised võrdsused:

Kirjutage iga numbri vastus näidatud ja kümnendsüsteemis. 2.44. Mis number eelneb igale järgmistest:

2.45. Kirjutage üles täisarvud, mis kuuluvad järgmistesse numbrilistesse intervallidesse:

a) kahendsüsteemis;

b) kaheksandsüsteemis;

c) kuueteistkümnendsüsteemis.

Kirjutage iga numbri vastus näidatud ja kümnendsüsteemis.



2.47. Leidke järgmiste arvude aritmeetiline keskmine:

2.48. Kaheksandikarvude summa 17 8 + 1700 8 + 170000 3 + 17000000 8 +
+ 1700000000 8 teisendati kuueteistkümnendsüsteemiks.
Leidke selle summaga võrduvast arvust vasakult viies number.


Taastage küsimärgiga tähistatud tundmatud numbrid
järgmised näited liitmise ja lahutamise kohta, olles eelnevalt kindlaks teinud
Le, mis süsteemis numbreid kujutatakse.

Tunni teema: Aritmeetilised tehted positsioonilistes arvusüsteemides.

9. klass

Tunni eesmärgid:

    Didaktiline: tutvustada õpilasi liitmise, lahutamise, korrutamise ja jagamisega kahendarvusüsteemis ning viia läbi nende toimingute sooritamise oskuse esmane arendamine.

    Hariduslik: arendada õpilastes huvi uute asjade õppimise vastu, näidata mittestandardse lähenemise võimalust arvutustele.

    Arenguline: arendada tähelepanu, mõtlemise rangust ja arutlusoskusi.

Tunni struktuur.

    Korralduslik hetk -1 min.

    Kodutöö kontrollimine suulise testiga –15 minutit.

    Kodutöö -2 minutit.

    Probleemide lahendamine samaaegse analüüsi ja materjali iseseisva arendamisega -25 min.

    Õppetunni kokkuvõtteks -2 minutit.

TUNNIDE AJAL

    Org moment.

    Kodutöö kontroll (suuline test) .

Õpetaja loeb küsimusi järjest. Õpilased kuulavad küsimust tähelepanelikult, ilma seda üles kirjutamata. Salvestatakse ainult vastus ja seda väga lühidalt. (Kui oskad vastata ühe sõnaga, siis kirjutatakse üles ainult see sõna).

    Mis on numbrisüsteem? (-on märgisüsteem, milles numbrid kirjutatakse teatud reeglite järgi, kasutades teatud tähestiku märke, mida nimetatakse numbriteks )

    Milliseid numbrisüsteeme teate?( mittepositsiooniline ja positsiooniline )

    Millist süsteemi nimetatakse mittepositsiooniliseks? (Arvu nimetatakse mittepositsiooniliseks, kui numbris oleva numbri kvantitatiivne ekvivalent (kvantitatiivne väärtus) ei sõltu selle asukohast arvu tähistuses ).

    Mis on positsioonilise MSS-i alus? (võrdne selle tähestiku moodustavate numbrite arvuga )

    Millist matemaatilist toimingut tuleks kasutada täisarvu teisendamiseks kümnendarvust mõneks muuks? (Jaotuse järgi )

    Mida tuleb teha arvu kümnendsüsteemist kahendarvuks teisendamiseks? (Jagage järjestikku 2-ga )

    Mitu korda arv 11,1 väheneb? 2 kui liigutad koma ühe koha võrra vasakule? (2 korda )

Nüüd kuulakem luuletust erakordsest tüdrukust ja vastake küsimustele. (Salm kõlab )

ERAKORDNE TÜDRUK

Ta oli tuhat ja sada aastat vana
Ta läks saja esimesse klassi,
Ta kandis portfellis sada raamatut.
See kõik on tõsi, mitte jama.

Kui tosina jalaga tolmu pühkides,
Ta kõndis mööda teed.
Kutsikas jooksis alati talle järele
Ühe sabaga, aga saja jalaga.

Ta tabas iga heli
Oma kümne kõrvaga,
Ja kümme päevitunud kätt
Nad hoidsid portfelli ja jalutusrihma.

Ja kümme tumesinist silma
Vaatasime maailma nagu tavaliselt,
Kuid kõik muutub täiesti normaalseks,
Millal sa mu jutust aru saad?

/ N. Starikov /

Ja kui vana tüdruk oli? (12 aastat ) Mis klassis ta käis? (5. klass ) Mitu kätt ja jalga tal oli? (2 kätt, 2 jalga ) Kuidas on kutsikal 100 jalga? (4 käppa )

Pärast testi täitmist loevad vastused õpilased ise valjult ette, viiakse läbi enesekontroll ja õpilased panevad endale hinded.

Kriteerium:

    10 õiget vastust (võib-olla väike viga) – “5”;

    9 või 8 – "4";

    7, 6 – “3”;

    ülejäänud on "2".

II. Kodutöö ülesanne (2 minutit)

10111 2 - 1011 2 = ? ( 1100 2 )
10111 2 + 1011 2 = ? ( 100010 2 )
10111 2 * 1011 2 = ? ( 11111101 2 ))

III. Töö uue materjaliga

Aritmeetilised tehted kahendarvusüsteemis.

Kahendarvusüsteemi aritmeetika põhineb tabelite kasutamisel numbrite liitmiseks, lahutamiseks ja korrutamiseks. Aritmeetilised operandid asuvad tabeli ülemises reas ja esimeses veerus ning tulemused on veergude ja ridade ristumiskohas:

0

1

1

1

Lisand.

Binaarne liitmistabel on äärmiselt lihtne. Ainult ühel juhul, kui tehakse 1+1 liitmine, toimub ülekanne kõige olulisemale numbrile.

1001 + 1010 = 10011

1101 + 1011 = 11000

11111 + 1 = 100000

1010011,111 + 11001,11 = 1101101,101

10111 2 + 1001 2 = ? (100000 2 )

Lahutamine.

Lahutustehte sooritamisel lahutatakse absoluutväärtuses suuremast arvust alati väiksem arv ja asetatakse vastav märk. Lahutamistabelis tähendab 1 koos tulbaga laenu kõige kõrgemal tasemel. 10111001,1 – 10001101,1 = 101100,0

101011111 – 110101101 = – 1001110

100000 2 - 10111 2 = ? (1001 2 )

Korrutamine

Korrutamistehe tehakse korrutustabeli abil vastavalt kümnendarvusüsteemis kasutatavale tavapärasele skeemile, korrutise järjestikuse korrutamisega kordaja järgmise numbriga. 11001 * 1101 = 101000101

11001,01 * 11,01 = 1010010,0001

Korrutamine taandub korrutise ja liitmise nihkele.

111 2 * 11 2 = ? (10101 2 )

V. Õppetunni kokkuvõtte tegemine

Kaart õpilase lisatöö tegemiseks.

Tehke aritmeetilisi tehteid:

A) 1110 2 + 1001 2 = ? (10111 2 ); 1101 2 + 110 2 = ? (10011 2 );

10101 2 + 1101 2 = ? (100010 2 ); 1011 2 + 101 2 = ? (10000 2 );

101 2 + 11 2 = ? (1000 2 ); 1101 2 + 111 2 = ? (10100 2 );

B) 1110 2 - 1001 2 = ? (101); 10011 2 - 101 2 = ? (1110 2 );