Binært talsystem

Talsystemer i kultur
indo-arabisk
arabisk
tamil
burmesisk
Khmer
Lao
Mongolsk
Thai
østasiatisk
kinesisk
japansk
Suzhou
koreansk
Vietnamesiske
tællestokke
Alfabetisk
Abjadia
Armensk
Aryabhata
kyrillisk
græsk
Georgisk
etiopisk
jødisk
Akshara Sankhya
Andet
Babylonsk
egyptisk
etruskisk
romersk
Donau
Attic
Kipu
Mayan
Aegean
KPPU-symboler
positionelle
2 , 3 , 4 , 5 , 6 , 8 , 10 , 12 , 16 , 20 , 60
Nega-positionel
symmetrisk
blandede systemer
Fibonacci
ikke-positionelle
Ental (unær)

Det binære talsystem  er et positionstalssystem med base 2. På grund af dets direkte implementering i digitale elektroniske kredsløblogiske porte , bruges det binære system i næsten alle moderne computere og andre elektroniske computerenheder .

Binær notation af tal

I det binære system skrives tal ved hjælp af to symboler ( 0 og 1 ). For ikke at forvirre i hvilket talsystem tallet er skrevet, er det forsynet med en pegepind nederst til højre. For eksempel et tal i decimal 5 10 , i binær 101 2 . Nogle gange er et binært tal angivet med præfikset 0b eller symbolet & (tegn) [1] , for eksempel 0b101 eller henholdsvis &101 .

I det binære talsystem (som i andre talsystemer undtagen decimaler) læses tegnene ét ad gangen. For eksempel udtales tallet 1012 "en nul en".

Naturlige tal

Et naturligt tal, skrevet i binært som , har betydningen:

hvor:

Negative tal

Negative binære tal angives på samme måde som decimaltal: med et "-" foran tallet. Et negativt heltal skrevet i binær notation har nemlig værdien:

Inden for databehandling er det meget brugt til at skrive negative binære tal i to's komplement .

Brøktal

Et brøktal, skrevet i binært som , har en værdi:

( -en n − en -en n − 2 … -en en -en 0 , -en − en -en − 2 … -en − ( m − en ) -en − m ) 2 = ∑ k = − m n − en -en k 2 k , {\displaystyle (a_{n-1}a_{n-2}\dots a_{1}a_{0},a_{-1}a_{-2}\dots a_{-(m-1)}a_{ -m})_{2}=\sum _{k=-m}^{n-1}a_{k}2^{k},}

hvor:

Addition, subtraktion og multiplikation af binære tal

Tillægstabel

+ 0 en
0 0 en
en en 0 (overfør 1 til høj bit)

subtraktionstabel

- 0 en
0 0 en
en 1 (lån fra seniorkategori) 0

Et eksempel på kolonneaddition (decimaludtrykket 14 10 + 5 10 = 19 10 i binært ser ud som 1110 2 + 101 2 = 10011 2 ):

+ en en en 0
en 0 en
en 0 0 en en

Multiplikationstabel

× 0 en
0 0 0
en 0 en

Et eksempel på multiplikation med en "kolonne" (decimaludtrykket 14 10 * 5 10 \u003d 70 10 i binært ser ud som 1110 2 * 101 2 \u003d 1000110 2 ):

× en en en 0
en 0 en
+ en en en 0
en en en 0
en 0 0 0 en en 0

Talkonverteringer

For at konvertere fra binær til decimal skal du bruge følgende tabel med 2-potenser:

1024 512 256 128 64 32 16 otte fire 2 en

Startende med tallet 1 ganges alle tal med to. Punktet efter 1 kaldes et binært punkt.

Konvertering af binære til decimaltal

Lad os sige, at det binære tal 110001 2 er givet . For at konvertere til decimal skal du skrive det som en sum over cifrene som følger:

1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49

Det samme lidt anderledes:

1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49

Du kan skrive dette i tabelform som følger:

512 256 128 64 32 16 otte fire 2 en
en en 0 0 0 en
+32 +16 +0 +0 +0 +1

Flyt fra højre mod venstre. Under hver binær enhed skal du skrive dens ækvivalent på linjen nedenfor. Tilføj de resulterende decimaltal. Det binære tal 110001 2 svarer således til decimaltallet 49 10 .

Konvertering af binære brøktal til decimal

Du skal konvertere tallet 1011010.101 2 til decimalsystemet. Lad os skrive dette tal sådan her:

1 * 2 6 + 0 * 2 5 + 1 * 2 4 + 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 0 * 2 0 + 1 * 2 −1 + 0 * 2 −2 + 1 * 2 -3 = 90,625

Det samme lidt anderledes:

1 *64 + 0 *32 + 1 *16 + 1 *8 + 0 *4 + 1 *2 + 0 *1 + 1 *0,5 + 0 *0,25 + 1 *0,125 = 90,625

Eller ifølge tabellen:

64 32 16 otte fire 2 en 0,5 0,25 0,125
en 0 en en 0 en 0 , en 0 en
+64 +0 +16 +8 +0 +2 +0 +0,5 +0 +0,125

Horners transformation

For at konvertere tal fra binær til decimal med denne metode, skal du summere tallene fra venstre mod højre og gange det tidligere opnåede resultat med systemets basis (i dette tilfælde 2). Horners metode konverteres normalt fra binær til decimal. Den omvendte operation er vanskelig, da den kræver færdigheder til addition og multiplikation i det binære talsystem.

For eksempel konverteres det binære tal 1011011 2 til decimal som følger:

0*2 + 1 = 1
1*2 + 0 = 2
2*2 + 1 = 5
5*2 + 1 = 11
11*2 + 0 = 22
22*2 + 1 = 45
45*2 + 1 = 91

Det vil sige, i decimalsystemet vil dette tal blive skrevet som 91.

Oversættelse af brøkdelen af ​​tal ved Horners metode

Tallene er taget fra tallet fra højre mod venstre og divideret med talsystemets grundlag (2).

For eksempel 0,1101 2

(0 + 1 )/2 = 0,5
(0,5 + 0 )/2 = 0,25
(0,25 + 1 )/2 = 0,625
(0,625 + 1 )/2 = 0,8125

Svar: 0,1101 2 = 0,8125 10

Decimal til binær konvertering

Lad os sige, at vi skal konvertere tallet 19 til binært. Du kan bruge følgende procedure:

19/2 = 9 med resten 1
9/2 = 4 med resten 1
4/2 = 2 uden resten 0
2/2 = 1 uden resten 0
1/2 = 0 med resten 1

Så vi dividerer hver kvotient med 2 og skriver resten til slutningen af ​​den binære notation. Vi fortsætter divisionen indtil kvotienten er 0. Vi skriver resultatet fra højre mod venstre. Det vil sige, at det nederste ciffer (1) vil være det længst til venstre osv. Som et resultat får vi tallet 19 i binær notation: 10011 .

Konvertering af brøkdecimaltal til binære

Hvis der er en heltalsdel i det oprindelige tal, konverteres den separat fra brøkdelen. Konverteringen af ​​et brøktal fra decimaltalsystemet til binært udføres i henhold til følgende algoritme:

  • Brøken ganges med basen af ​​det binære talsystem (2);
  • I det resulterende produkt tildeles heltalsdelen, som tages som det mest signifikante ciffer af tallet i det binære talsystem;
  • Algoritmen afsluttes, hvis brøkdelen af ​​det resulterende produkt er lig med nul, eller hvis den krævede beregningsnøjagtighed er nået. Ellers fortsætter beregningerne over brøkdelen af ​​produktet.

Eksempel: Du vil konvertere brøkdecimaltallet 206.116 til et binært brøktal.

Oversættelsen af ​​heltalsdelen giver 206 10 =11001110 2 ifølge de tidligere beskrevne algoritmer. Vi multiplicerer brøkdelen af ​​0,116 med grundtal 2, og sætter de heltallige dele af produktet i cifrene efter decimalpunktet for det ønskede binære brøktal:

0,116 • 2 = 0,232 0,232
• 2 = 0,464 0,464 • 2 = 0,928 0,928 • 2 = 1,856 0,856 • 2 = 1,712 0,712 • 2 = 1,424 0,424 • 2 = 0,8480,848 1,696 0,696 • 2 = 1,392 0,392 • 2 = 0,848 0,848 • 2 = 1,696 0,696 • 2 = 1,392 0,392 • etc.








Således 0,116 10 ≈ 0,0001110110 2

Vi får: 206.116 10 ≈ 11001110.0001110110 2

Ansøgninger

I digitale enheder

Det binære system bruges i digitale enheder, fordi det er det enkleste og opfylder kravene:

  • Jo færre værdier der findes i systemet, jo lettere er det at lave individuelle elementer, der opererer på disse værdier. Især to cifre i det binære talsystem kan let repræsenteres af mange fysiske fænomener: der er strøm (strømmen er større end tærskelværdien) - der er ingen strøm (strømmen er mindre end tærskelværdien), den magnetiske feltinduktion er større end tærskelværdien eller ej (magnetfeltinduktionen er mindre end tærskelværdien) osv.
  • Jo lavere antallet af tilstande for et element, jo højere er støjimmuniteten, og jo hurtigere kan det arbejde. For eksempel, for at indkode tre tilstande med hensyn til spænding, strøm eller magnetfeltinduktion, skal du indtaste to tærskelværdier og to komparatorer ,

Inden for databehandling er det meget brugt til at skrive negative binære tal i to's komplement . For eksempel kunne tallet -5 10 skrives som -101 2 , men vil blive gemt som 1111111111111111111111111111011 2 på en 32-bit computer .

Generaliseringer

Det binære talsystem er en kombination af et binært kodesystem og en eksponentiel vægtfunktion med en grundtal lig med 2. Et tal kan skrives i binær kode , og talsystemet er muligvis ikke binært, men med en anden grundtal. Eksempel: BCD-kodning , hvor decimaltal er skrevet binært, og talsystemet er decimalt.

Historie

  • Prototypen på de databaser, der blev meget brugt i de centrale Andesbjerge ( Peru , Bolivia ) til statslige og offentlige formål i det I-II årtusinde e.Kr. e. der var en knudret skrift af Incas  - kipu , bestående af både numeriske indtastninger i decimalsystemet [4] og ikke-numeriske indtastninger i det binære kodesystem [5] . Den quipu brugte primære og sekundære nøgler, positionsnumre, farvekodning og dannelsen af ​​serier af gentagne data [6] . Kipu blev brugt for første gang i menneskehedens historie til at anvende en sådan regnskabsmetode som dobbelt bogføring [7] .
  • Sæt, der er kombinationer af binære cifre, blev brugt af afrikanere i traditionel spådomskunst (såsom Ifa ) sammen med middelalderlig geomancy .
  • I 1605 beskrev Francis Bacon et system, hvor bogstaverne i alfabetet kunne reduceres til sekvenser af binære cifre, som igen kunne kodes som subtile skrifttypeændringer i enhver tilfældig tekst. Et vigtigt skridt i udviklingen af ​​den generelle teori om binær kodning er observationen af, at denne metode kan bruges til alle objekter [8] (se Bacons cipher ).
  • Det moderne binære system blev fuldt ud beskrevet af Leibniz i det 17. århundrede i Explication de l'Arithmétique Binaire [9] . Leibniz talsystemet brugte cifrene 0 og 1, ligesom det moderne binære system. Som en person, der var fascineret af kinesisk kultur, kendte Leibniz til Forandringernes Bog og bemærkede, at hexagrammer svarer til binære tal fra 0 til 111111. Han beundrede det faktum, at denne visning er bevis på store kinesiske præstationer inden for filosofisk matematik på den tid [10] .
  • I 1854 udgav den engelske matematiker George Boole et skelsættende værk, der beskrev algebraiske systemer som anvendt på logik , som nu er kendt som boolsk algebra eller logikkens algebra . Hans logiske beregning var bestemt til at spille en vigtig rolle i udviklingen af ​​moderne digitale elektroniske kredsløb.
  • I 1937 afleverede Claude Shannon sin ph.d.-afhandling , Symbolic Analysis of Relay and Switching Circuits ved MIT , hvor boolsk algebra og binær aritmetik blev anvendt på elektroniske relæer og switches. Stort set al moderne digital teknologi er baseret på Shannons afhandling .
  • I november 1937 byggede George Stiebitz , som senere arbejdede hos Bell Labs , en relæbaseret "Model K" (fra det engelske " Køkken " køkken, hvor monteringen blev udført) computer, der udførte binær addition. I slutningen af ​​1938 lancerede Bell Labs et forskningsprogram ledet af Stibitz. Computeren skabt under hans ledelse, færdiggjort den 8. januar 1940, var i stand til at udføre operationer med komplekse tal . Under en demonstration ved American Mathematical Society -konferencen på Dartmouth College den 11. september 1940 demonstrerede Stiebitz evnen til at sende kommandoer til en fjernberegner med komplekse tal over en telefonlinje ved hjælp af en fjernskrivemaskine . Dette var det første forsøg på at bruge en fjerncomputer via en telefonlinje. Blandt konferencedeltagerne, der overværede demonstrationen, var John von Neumann , John Mauchly og Norbert Wiener , som senere skrev om det i deres erindringer.

Se også

Noter

  1. Popova Olga Vladimirovna. Datalogi lærebog . Hentet 3. november 2014. Arkiveret fra originalen 3. november 2014.
  2. Sanchez, Julio & Canton, Maria P. (2007), Mikrocontrollerprogrammering: mikrochippen PIC , Boca Raton, Florida: CRC Press, s. 37, ISBN 0-8493-7189-9  
  3. W.S. Anglin og J. Lambek, The Heritage of Thales , Springer, 1995, ISBN 0-387-94544-X
  4. Ordish George, Hyams, Edward. Den sidste af inkaerne: et amerikansk imperiums opgang og fald. - New York: Barnes & Noble, 1996. - S. 80. - ISBN 0-88029-595-3 .
  5. Eksperter 'dechifrerer' inkastrenge . Arkiveret fra originalen den 18. august 2011.
  6. Carlos Radicati di Primeglio, Gary Urton. Estudios sobre los quipus  (neopr.) . - S. 49.
  7. Dale Buckmaster. The Incan Quipu and the Jacobsen Hypothesis  //  Journal of Accounting Research : journal. - 1974. - Bd. 12 , nr. 1 . - S. 178-181 .
  8. Bacon, Francis , The Advancement of Learning , bind. 6, London, s. Kapitel 1 , < http://home.hiwaay.net/~paul/bacon/advancement/book6ch1.html > Arkiveret 18. marts 2017 på Wayback Machine 
  9. http://www.leibniz-translations.com/binary.htm Arkiveret 11. februar 2021 på Wayback Machine Leibniz Translation.com FORKLARING AF BINÆR ARITMETIK
  10. Aiton, Eric J. (1985), Leibniz: A Biography , Taylor & Francis, s. 245–8, ISBN 0-85274-470-6 

Links