Tingnan natin ang isa sa pinakamahalagang paksa sa computer science -. Sa kurikulum ng paaralan, ito ay ipinahayag sa halip "mahinhin," malamang dahil sa kakulangan ng mga oras na inilaan dito. Kaalaman sa paksang ito, lalo na sa pagsasalin ng mga sistema ng numero, ay isang kinakailangan para sa matagumpay na pagpasa sa Pinag-isang Estado ng Pagsusulit at pagpasok sa mga unibersidad sa mga nauugnay na faculty. Sa ibaba ay tinatalakay natin nang detalyado ang mga konsepto tulad ng positional at non-positional number system, ibinibigay ang mga halimbawa ng mga sistema ng numero na ito, ipinakita ang mga panuntunan para sa pag-convert ng mga buong decimal na numero, wastong mga decimal fraction at pinaghalong decimal na numero sa anumang iba pang sistema ng numero, pag-convert ng mga numero mula sa anumang sistema ng numero sa decimal, pag-convert mula sa octal at hexadecimal na mga sistema ng numero sa binary na numero sistema. Mayroong maraming mga problema sa paksang ito sa mga pagsusulit. Ang kakayahang malutas ang mga ito ay isa sa mga kinakailangan para sa mga aplikante. Paparating na: Para sa bawat paksa ng seksyon, bilang karagdagan sa detalyadong teoretikal na materyal, halos lahat ng posibleng opsyon ay ipapakita mga gawain para sa sariling pag-aaral. Bilang karagdagan, magkakaroon ka ng pagkakataong mag-download ng ganap na walang bayad mula sa isang file hosting service na handa nang detalyadong mga solusyon sa mga problemang ito, na naglalarawan ng iba't ibang paraan upang makuha ang tamang sagot.
positional number system.
Non-positional number system- mga sistema ng numero kung saan ang quantitative value ng isang digit ay hindi nakadepende sa lokasyon nito sa numero.
Kabilang sa mga non-positional number system ang, halimbawa, Roman, kung saan sa halip na mga numero ay may mga Latin na titik.
ako | 1 (isa) |
V | 5 (lima) |
X | 10 (sampu) |
L | 50 (limampu) |
C | 100 (isang daan) |
D | 500 (limang daan) |
M | 1000 (libo) |
Dito ang letrang V ay kumakatawan sa 5 anuman ang lokasyon nito. Gayunpaman, nararapat na banggitin na bagama't ang sistema ng Romanong numero ay isang klasikong halimbawa ng isang hindi posisyonal na sistema ng numero, hindi ito ganap na hindi posisyon, dahil Ang mas maliit na numero sa harap ng mas malaki ay ibinabawas dito:
IL | 49 (50-1=49) |
VI | 6 (5+1=6) |
XXI | 21 (10+10+1=21) |
MI | 1001 (1000+1=1001) |
positional number system.
Mga sistema ng numero ng posisyon- mga sistema ng numero kung saan nakadepende ang quantitative value ng isang digit sa lokasyon nito sa numero.
Halimbawa, kung pinag-uusapan natin ang sistema ng decimal na numero, kung gayon sa numero 700 ang numero 7 ay nangangahulugang "pitong daan", ngunit ang parehong numero sa numero 71 ay nangangahulugang "pitong sampu", at sa numerong 7020 - "pitong libo" .
Ang bawat isa positional number system ay may sariling base. Ang isang natural na numero na mas malaki sa o katumbas ng dalawa ay pinili bilang base. Ito ay katumbas ng bilang ng mga digit na ginamit sa isang ibinigay na sistema ng numero.
- Halimbawa:
- Binary- positional number system na may base 2.
- Quaternary- positional number system na may base 4.
- Limang beses- positional number system na may base 5.
- Octal- positional number system na may base 8.
- Hexadecimal- positional number system na may base 16.
Upang matagumpay na malutas ang mga problema sa paksang "Mga sistema ng numero", dapat malaman ng mag-aaral sa puso ang mga sulat ng binary, decimal, octal at hexadecimal na mga numero hanggang 16 10:
10 s/s | 2 s/s | 8 s/s | 16 s/s |
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | A |
11 | 1011 | 13 | B |
12 | 1100 | 14 | C |
13 | 1101 | 15 | D |
14 | 1110 | 16 | E |
15 | 1111 | 17 | F |
16 | 10000 | 20 | 10 |
Kapaki-pakinabang na malaman kung paano nakuha ang mga numero sa mga sistema ng numero na ito. Maaari mong hulaan iyon sa octal, hexadecimal, ternary at iba pa positional number system lahat ng bagay ay nangyayari sa parehong paraan tulad ng sistema ng decimal na nakasanayan natin:
Ang isa ay idinagdag sa numero at isang bagong numero ang nakuha. Kung ang lugar ng mga yunit ay magiging katumbas ng base ng sistema ng numero, dinadagdagan namin ang bilang ng sampu ng 1, atbp.
Ang “transition of one” na ito ang nakakatakot sa karamihan ng mga estudyante. Sa katunayan, ang lahat ay medyo simple. Nagaganap ang paglipat kung ang digit ng mga yunit ay magiging katumbas ng base ng numero, dinadagdagan namin ang bilang ng sampu ng 1. Marami, na naaalala ang magandang lumang sistema ng decimal, ay agad na nalilito tungkol sa mga digit sa transition na ito, dahil ang decimal at, halimbawa, binary tens ay magkaibang bagay.
Mula rito, ang mga maparaan na mag-aaral ay bumuo ng "kanilang sariling mga pamamaraan" (nakakagulat... gumagana) kapag pinupunan, halimbawa, ang mga talahanayan ng katotohanan, ang mga unang column (mga variable na halaga) kung saan, sa katunayan, ay puno ng mga binary na numero sa pataas na pagkakasunud-sunod.
Halimbawa, tingnan natin ang pagkuha ng mga numero octal system: Nagdaragdag kami ng 1 sa unang numero (0), nakakakuha kami ng 1. Pagkatapos ay nagdaragdag kami ng 1 sa 1, nakakuha kami ng 2, atbp. sa 7. Kung magdadagdag tayo ng isa sa 7, makakakuha tayo ng isang numero na katumbas ng base ng sistema ng numero, i.e. 8. Pagkatapos ay kailangan mong dagdagan ang sampu na lugar ng isa (nakukuha namin ang octal ten - 10). Susunod, malinaw naman, ay ang mga numero 11, 12, 13, 14, 15, 16, 17, 20, ..., 27, 30, ..., 77, 100, 101...
Mga panuntunan para sa pag-convert mula sa isang sistema ng numero patungo sa isa pa.
1 Pag-convert ng mga integer decimal na numero sa anumang iba pang sistema ng numero.
Dapat hatiin ang numero sa bagong base ng sistema ng numero. Ang unang natitirang bahagi ng dibisyon ay ang unang menor de edad na digit ng bagong numero. Kung ang quotient ng dibisyon ay mas mababa o katumbas ng bagong base, kung gayon ito (ang quotient) ay dapat na hatiin muli ng bagong base. Dapat ipagpatuloy ang paghahati hanggang sa makakuha tayo ng quotient na mas mababa kaysa sa bagong base. Ito ang pinakamataas na digit ng bagong numero (kailangan mong tandaan na, halimbawa, sa hexadecimal system, pagkatapos ng 9 ay may mga titik, ibig sabihin, kung ang natitira ay 11, kailangan mong isulat ito bilang B).
Halimbawa ("division by corner"): I-convert natin ang numerong 173 10 sa octal number system.
Kaya, 173 10 =255 8
2 Pag-convert ng mga regular na decimal fraction sa anumang iba pang sistema ng numero.
Dapat i-multiply ang numero sa bagong base ng sistema ng numero. Ang digit na naging bahagi ng integer ay ang pinakamataas na digit ng fractional na bahagi ng bagong numero. upang makuha ang susunod na digit, ang fractional na bahagi ng resultang produkto ay dapat muling i-multiply sa isang bagong base ng sistema ng numero hanggang sa mangyari ang paglipat sa buong bahagi. Ipinagpapatuloy namin ang multiplikasyon hanggang sa maging zero ang fractional na bahagi, o hanggang sa maabot namin ang katumpakan na tinukoy sa problema (“... kalkulahin nang may katumpakan ng, halimbawa, dalawang decimal na lugar”).
Halimbawa: I-convert natin ang numerong 0.65625 10 sa octal number system.
Mga pamamaraan para sa pag-convert ng mga numero mula sa isang sistema ng numero patungo sa isa pa.
Pag-convert ng mga numero mula sa isang positional number system patungo sa isa pa: pag-convert ng mga integer.
Upang i-convert ang isang integer mula sa isang sistema ng numero na may base d1 patungo sa isa pa na may base d2, dapat mong sunud-sunod na hatiin ang numerong ito at ang mga resultang quotient sa base d2 ng bagong system hanggang sa makakuha ka ng quotient na mas mababa sa base d2. Ang huling quotient ay ang pinaka makabuluhang digit ng isang numero sa bagong sistema ng numero na may base d2, at ang mga digit na sumusunod dito ay mga nalalabi mula sa dibisyon, na nakasulat sa reverse order ng kanilang resibo. Magsagawa ng mga operasyong aritmetika sa sistema ng numero kung saan isinusulat ang numerong isinasalin.
Halimbawa 1. I-convert ang numero 11(10) sa binary number system.
Sagot: 11(10)=1011(2).
Halimbawa 2. I-convert ang numerong 122(10) sa octal number system.
Sagot: 122(10)=172(8).
Halimbawa 3. I-convert ang numerong 500(10) sa hexadecimal number system.
Sagot: 500(10)=1F4(16).
Pag-convert ng mga numero mula sa isang positional number system patungo sa isa pa: pag-convert ng mga wastong fraction.
Upang ma-convert ang isang wastong fraction mula sa isang sistema ng numero na may base d1 sa isang sistema na may base d2, kinakailangan na sunud-sunod na i-multiply ang orihinal na fraction at ang mga fractional na bahagi ng mga resultang produkto sa base ng bagong sistema ng numero d2. Ang tamang bahagi ng isang numero sa bagong sistema ng numero na may base d2 ay nabuo sa anyo ng mga integer na bahagi ng mga resultang produkto, simula sa una.
Kung ang pagsasalin ay nagreresulta sa isang fraction sa anyo ng isang walang katapusan o divergent na serye, ang proseso ay maaaring makumpleto kapag ang kinakailangang katumpakan ay nakamit.
Kapag nagsasalin ng mga pinaghalong numero, kinakailangang magkahiwalay na isalin ang integer at fractional na mga bahagi sa isang bagong sistema ayon sa mga patakaran para sa pagsasalin ng mga integer at tamang fraction, at pagkatapos ay pagsamahin ang parehong mga resulta sa isang pinaghalong numero sa bagong sistema ng numero.
Halimbawa 1. I-convert ang numerong 0.625(10) sa binary number system.
Sagot: 0.625(10)=0.101(2).
Halimbawa 2. I-convert ang numerong 0.6(10) sa octal number system.
Sagot: 0.6(10)=0.463(8).
Halimbawa 2. I-convert ang numero 0.7(10) sa hexadecimal number system.
Sagot: 0.7(10)=0.B333(16).
I-convert ang binary, octal at hexadecimal na mga numero sa decimal na sistema ng numero.
Upang i-convert ang isang numero mula sa P-ary system sa isang decimal, dapat mong gamitin ang sumusunod na formula ng pagpapalawak:
аnan-1…а1а0=аnPn+ аn-1Pn-1+…+ а1P+a0 .
Halimbawa 1. I-convert ang numerong 101.11(2) sa sistema ng decimal na numero.
Sagot: 101.11(2)= 5.75(10) .
Halimbawa 2. I-convert ang numerong 57.24(8) sa sistema ng decimal na numero.
Sagot: 57.24(8) = 47.3125(10) .
Halimbawa 3. I-convert ang numerong 7A,84(16) sa sistema ng decimal na numero.
Sagot: 7A.84(16)= 122.515625(10) .
Pag-convert ng octal at hexadecimal na mga numero sa binary number system at vice versa.
Upang i-convert ang isang numero mula sa octal number system patungo sa binary, ang bawat digit ng numerong ito ay dapat na nakasulat bilang tatlong-digit na binary number (triad).
Halimbawa: isulat ang numero 16.24(8) sa binary number system.
Sagot: 16.24(8)= 1110.0101(2) .
Upang i-convert ang binary number pabalik sa octal number system, kailangan mong hatiin ang orihinal na numero sa mga triad sa kaliwa at kanan ng decimal point at kinakatawan ang bawat pangkat na may digit sa octal number system. Ang mga matinding hindi kumpletong triad ay dinadagdagan ng mga zero.
Halimbawa: isulat ang numero 1110.0101(2) sa octal number system.
Sagot: 1110.0101(2)= 16.24(8) .
Upang i-convert ang isang numero mula sa hexadecimal number system patungo sa binary system, kailangan mong isulat ang bawat digit ng numerong ito bilang isang apat na digit na binary number (tetrad).
Halimbawa: isulat ang numero 7A,7E(16) sa binary number system.
Sagot: 7A,7E(16)= 1111010.0111111(2) .
Tandaan: ang mga nangungunang zero sa kaliwa para sa mga integer at sa kanan para sa mga fraction ay hindi nakasulat.
Upang i-convert ang binary number pabalik sa hexadecimal number system, kailangan mong hatiin ang orihinal na numero sa mga tetrad sa kaliwa at kanan ng decimal point at kinakatawan ang bawat pangkat na may digit sa hexadecimal number system. Ang mga matinding hindi kumpletong triad ay dinadagdagan ng mga zero.
Halimbawa: isulat ang numerong 1111010.0111111(2) sa hexadecimal number system.
Upang i-convert ang mga numero mula sa decimal s/s sa anumang iba pa, kailangan mong hatiin ang decimal na numero sa base ng system kung saan ka nagko-convert, habang pinapanatili ang natitira mula sa bawat dibisyon. Ang resulta ay nabuo mula kanan hanggang kaliwa. Ang paghahati ay nagpapatuloy hanggang sa ang resulta ng paghahati ay mas mababa kaysa sa divisor.
Ang calculator ay nagko-convert ng mga numero mula sa isang sistema ng numero patungo sa iba pa. Maaari itong mag-convert ng mga numero mula sa binary patungo sa decimal o decimal sa hexadecimal, na nagpapakita ng detalyadong pag-unlad ng solusyon. Madali mong mako-convert ang isang numero mula sa ternary patungo sa quinary o kahit na mula septenary hanggang ikalabimpito. Ang calculator ay maaaring mag-convert ng mga numero mula sa anumang sistema ng numero patungo sa anumang iba pa.