Mga sistema ng numero
Ang sistema ng numero ay isang hanay ng mga panuntunan para sa kumakatawan sa mga numero gamit ang iba't ibang mga numerical sign. Ang mga sistema ng numero ay inuri sa dalawang uri: non-positional at positional.
Sa mga positional number system, ang halaga ng bawat digit ay hindi nakasalalay sa posisyon na sinasakop nito, iyon ay, sa lugar na inookupahan nito sa hanay ng mga digit. Sa sistemang Roman numeral, mayroon lamang pitong numero: isa (I), lima (V), sampu (X), limampu (L), isang daan (C), limang daan (D), isang libo (M). Gamit ang mga numerong ito (mga simbolo), ang natitirang mga numero ay isinusulat sa pamamagitan ng pagdaragdag at pagbabawas. Halimbawa, ang IV ay ang notasyon ng numero 4 (V — I), VI ay ang numero 6 (V + I), at iba pa. Ang bilang na 666 ay nakasulat sa sistemang Romano tulad ng sumusunod: DCLXVI.
Ang notasyong ito ay hindi gaanong maginhawa kaysa sa kasalukuyang ginagamit namin. Narito ang anim ay nakasulat na may isang simbolo (VI), anim na sampu sa isa pa (LX), anim na raan at pangatlo (DC). Napakahirap magsagawa ng mga operasyong aritmetika na may mga numerong nakasulat sa sistema ng Roman numeral. Gayundin, ang isang karaniwang disbentaha ng mga non-positional system ay ang pagiging kumplikado ng pagrepresenta ng sapat na malalaking numero sa mga ito upang magresulta sa labis na masalimuot na notasyon.
Ngayon isaalang-alang ang parehong numero 666 sa positional number system. Sa loob nito, ang isang solong tanda 6 ay nangangahulugang ang bilang ng mga isa kung ito ay nasa huling lugar, ang bilang ng sampu kung ito ay nasa penultimate na lugar, at ang bilang ng mga daan-daan kung ito ay nasa ikatlong lugar mula sa dulo. Ang prinsipyong ito ng pagsulat ng mga numero ay tinatawag na positional (lokal). Sa naturang pag-record, ang bawat digit ay tumatanggap ng isang numerical na halaga depende hindi lamang sa estilo nito, kundi pati na rin sa kung saan ito nakatayo kapag ang numero ay nakasulat.
Sa positional number system, anumang numero na kinakatawan bilang A = +a1a2a3 … ann-1an ay maaaring katawanin bilang kabuuan
kung saan n — may hangganan na bilang ng mga digit sa imahe ng isang numero, ii number i-go digit, d — base ng number system, i — ordinal number ng kategorya, dm-i — "weight" ng i-ro category . Dapat matugunan ng mga digit ai ang hindi pagkakapantay-pantay 0 <= a <= (d — 1).
Para sa decimal notation, d = 10 at ai = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
Dahil ang mga numerong binubuo ng mga isa at mga zero ay maaaring makita bilang mga decimal o binary na mga numero kapag ginamit nang magkasama, ang base ng sistema ng numero ay karaniwang ipinapahiwatig, halimbawa (1100)2-binary, (1100)10-decimal.
Sa mga digital na computer, ang mga system maliban sa decimal ay malawakang ginagamit: binary, octal, at hexadecimal.
Binary system
Para sa sistemang ito d = 2 at dito dalawang digit lang ang pinapayagan, i.e. ai = 0 o 1.
Ang anumang numero na ipinahayag sa binary system ay kinakatawan bilang ang kabuuan ng produkto ng kapangyarihan ng base dalawang beses ang binary digit ng ibinigay na bit. Halimbawa, ang bilang na 101.01 ay maaaring isulat tulad nito: 101.01 = 1×22 + 0x21 + 1×20 + 0x2-1 + 1×2-2, na tumutugma sa numero sa decimal system: 4 + 1 + 0.25 = 5.25 .
Sa karamihan ng mga modernong digital na computer, ang binary number system ay ginagamit upang kumatawan sa mga numero sa isang makina at magsagawa ng mga aritmetika na operasyon sa mga ito.
Ang binary number system, kumpara sa decimal one, ay ginagawang posible na gawing simple ang mga circuit at circuit ng arithmetic device at memory device at upang mapataas ang pagiging maaasahan ng computer. Ang digit ng bawat bit ng isang binary na numero ay kinakatawan ng "on / off" na mga estado ng mga elemento tulad ng transistors, diodes, na gumagana nang mapagkakatiwalaan sa "on / off" na mga estado. Kabilang sa mga disadvantage ng binary system ang pangangailangang isalin ayon sa isang espesyal na programa ang orihinal na digital na data sa binary number system at ang mga resulta ng desisyon sa decimal.
Octal number system
Ang sistemang ito ay may base d == 8. Ang mga numero ay ginagamit upang kumatawan sa mga numero: 0, 1, 2, 3, 4, 5, 6, 7.
Ang sistema ng octal na numero ay ginagamit sa computer bilang isang tulong sa paghahanda ng mga problema para sa paglutas (sa proseso ng programming), sa pagsuri sa pagpapatakbo ng isang makina, at sa pag-debug ng isang programa. Ang sistemang ito ay nagbibigay ng mas maikling representasyon ng numero kaysa sa binary system. Binibigyang-daan ka ng octal number system na lumipat lang sa binary system.
Hexadecimal na sistema ng numero
Ang sistemang ito ay may base d = 16. 16 na character ang ginagamit upang kumatawan sa mga numero: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, at ang ang mga character na A … F ay kumakatawan sa mga decimal na numero 10, 11, 12, 13, 14 at 15. Ang hexadecimal na numero (1D4F) 18 ay tumutugma sa decimal na 7503 dahil (1D4F)18 = 1 x163 + 13 x 162 + 14 x 161+ 15 x 16O = (7503)10
Ang hexadecimal notation ay nagbibigay-daan sa mga binary number na maisulat nang mas compact kaysa octal. Nakahanap ito ng application sa input at output device at number order display device ng ilang computer.
Binary-decimal na sistema ng numero
Ang representasyon ng mga numero sa binary-decimal system ay ang mga sumusunod. Ang decimal notation ng numero ay kinuha bilang batayan, at pagkatapos ay ang bawat isa sa mga digit nito (mula 0 hanggang 9) ay isinusulat sa anyo ng isang apat na digit na binary na numero na tinatawag na tetrad, iyon ay, walang isang sign ang ginagamit upang kumatawan. bawat digit ng decimal system, ngunit apat.
Halimbawa, ang decimal na 647.59 ay tumutugma sa BCD 0110 0100 0111, 0101 1001.
Ang sistema ng binary-decimal na numero ay ginagamit bilang isang intermediate na sistema ng numero at para sa pag-encode ng mga numero ng input at output.
Mga panuntunan para sa paglilipat ng isang sistema ng numero sa isa pa
Ang pagpapalitan ng impormasyon sa pagitan ng mga computer device ay pangunahing isinasagawa sa pamamagitan ng mga numerong kinakatawan sa binary number system. Gayunpaman, ang impormasyon ay ipinakita sa gumagamit sa mga numero sa decimal system, at ang command addressing ay ipinakita sa octal system. Samakatuwid ang pangangailangan na maglipat ng mga numero mula sa isang sistema patungo sa isa pa sa proseso ng pagtatrabaho sa isang computer. Upang gawin ito, gamitin ang sumusunod na pangkalahatang tuntunin.
Upang i-convert ang isang buong numero mula sa anumang sistema ng numero patungo sa isa pa, kinakailangan na sunud-sunod na hatiin ang numerong ito sa base ng bagong sistema hanggang ang quotient ay hindi bababa sa divisor. Ang numero sa bagong sistema ay dapat na nakasulat sa anyo ng mga natitira sa dibisyon, simula sa huli, iyon ay, mula kanan hanggang kaliwa.
Halimbawa, i-convert natin ang decimal 1987 sa binary:
Ang decimal na numerong 1987 sa binary na format ay 11111000011, i.e. (1987)10 = (11111000011)2
Kapag nagbabago mula sa anumang sistema patungo sa decimal, ang numero ay kinakatawan bilang ang kabuuan ng mga kapangyarihan ng base na may kaukulang coefficient, at pagkatapos ay ang halaga ng kabuuan ay kinakalkula.
Halimbawa, i-convert natin ang octal number 123 sa decimal: (123)8 = 1 x 82 + 2 x 81 + 3 x 80 = 64 + 16 + 3 = 83, i.e. (123)8 = (83)10
Upang ilipat ang fractional na bahagi ng isang numero mula sa anumang system patungo sa isa pa, kinakailangan na magsagawa ng sunud-sunod na multiplikasyon ng fraction na ito at ang mga resultang fractional na bahagi ng produkto batay sa bagong sistema ng numero. Ang fractional na bahagi ng isang numero sa bagong sistema ay nabuo sa anyo ng buong bahagi ng mga resultang produkto, simula sa una. Ang proseso ng pagpaparami ay nagpapatuloy hanggang sa makalkula ang isang numero na may ibinigay na katumpakan.
Halimbawa, i-convert natin ang decimal fraction 0.65625 sa binary number system:
Dahil ang fractional na bahagi ng ikalimang produkto ay binubuo lamang ng mga zero, ang karagdagang pagpaparami ay hindi na kailangan. Nangangahulugan ito na ang ibinigay na decimal ay na-convert sa binary nang walang error, i.e. (0.65625)10 = (0.10101)2.
Ang pag-convert mula sa octal at hexadecimal sa binary at vice versa ay hindi mahirap. Ito ay dahil ang kanilang mga base (d — 8 at d — 16) ay tumutugma sa mga integer ng dalawa (23 = 8 at 24 = 16).
Upang i-convert ang octal o hexadecimal na mga numero sa binary, sapat na upang palitan ang bawat isa sa kanilang mga numero ng tatlo o apat na digit na binary na numero, ayon sa pagkakabanggit.
Halimbawa, isalin natin ang octal number (571)8 at ang hexadecimal number (179)16 sa binary number system.
Sa parehong mga kaso nakakakuha kami ng parehong resulta, i.e. (571)8 = (179)16 = (101111001)2
Upang i-convert ang isang numero mula sa binary-decimal patungo sa decimal, kailangan mong palitan ang bawat tetrad ng numerong kinakatawan sa binary-decimal ng isang digit na kinakatawan sa decimal.
Halimbawa, isulat natin ang numero (0010 0001 1000, 0110 0001 0110)2-10 sa decimal notation, i.e. (0010 0001 1000, 0110 0001 0110)2-10 = (218,625)
