Badilisha kwa urahisi nambari kati ya mifumo ya binary na decimal kwa kutumia chombo hiki cha mtandaoni bure. Badiliko la papo hapo na uonyeshaji wa kielimu.
Badilisha kati ya mifumo ya nambari ya binary na decimal mara moja.
Nambari za binary hutumia 0 na 1 pekee
Nambari za decimal hutumia tarakimu 0-9
Ingiza thamani katika eneo lolote ili kuona mbadala katika eneo lingine.
Mkonvershi wa Binary-Decimal ni chombo muhimu kwa mtu yeyote anayefanya kazi na mifumo tofauti ya nambari. Binary (misingi-2) na decimal (misingi-10) ni mifumo miwili ya nambari ya msingi inayotumiwa katika kompyuta na hisabati. Mkonvershi wetu wa binary hadi decimal unakuwezesha kutafsiri nambari kati ya mifumo hii mara moja kwa usahihi kamili. Ikiwa wewe ni mwanafunzi wa sayansi ya kompyuta unayejifunza kuhusu uwakilishi wa binary, mpangaji akifanya kazi kwenye msimbo, au mpenzi wa elektroniki anayefanya kazi na mizunguko ya kidijitali, chombo hiki kinarahisisha mchakato wa kubadilisha kati ya muundo wa nambari za binary na decimal bila kuhitaji mahesabu magumu ya mikono.
Nambari za binary, ambazo zinajumuisha 0s na 1s pekee, zinaunda msingi wa mifumo yote ya kompyuta ya kidijitali, wakati mfumo wa decimal ukiwa na tarakimu 0-9 ndio tunatumia katika maisha ya kila siku. Kuelewa uhusiano kati ya mifumo hii ni muhimu kwa mtu yeyote anayeshughulika na sayansi ya kompyuta, programu, au elektroniki za kidijitali. Chombo hiki kinajaza pengo kati ya mifumo hii ya nambari, na kufanya mabadiliko kuwa rahisi na yasiyo na makosa.
Mfumo wa decimal ni mfumo wetu wa kawaida wa nambari, ukitumia tarakimu 10 (0-9). Katika mfumo huu wa nambari wa nafasi, kila nafasi ya tarakimu inawakilisha nguvu ya 10:
Kwa mfano, nambari ya decimal 427 inawakilisha:
Kuongeza thamani hizi: 400 + 20 + 7 = 427
Mfumo wa binary unatumia tarakimu mbili tu (0 na 1). Kila nafasi katika nambari ya binary inawakilisha nguvu ya 2:
Kwa mfano, nambari ya binary 1010 inawakilisha:
Kuongeza thamani hizi: 8 + 0 + 2 + 0 = 10 katika decimal
Ili kubadilisha nambari ya binary kuwa decimal, zidisha kila tarakimu kwa nguvu yake inayohusiana ya 2 na jumlisha matokeo:
Ambapo:
Mfano: Kubadilisha binary 1101 kuwa decimal
Ili kubadilisha nambari ya decimal kuwa binary, gawanya nambari mara kwa mara kwa 2 na uandike mabaki kwa mpangilio wa kinyume:
Mfano: Kubadilisha decimal 25 kuwa binary
Mkonvershi wetu wa binary-decimal umeundwa kuwa wa kueleweka na urahisi wa matumizi. Fuata hatua hizi rahisi ili kubadilisha kati ya nambari za binary na decimal:
Mkonvershi pia unatoa maelezo ya kuona ya mchakato wa mabadiliko, ukikuonyesha jinsi kila kubadilisha inavyofanywa kimaandishi. Kipengele hiki cha kielimu kinakusaidia kuelewa kanuni za msingi za mabadiliko ya mifumo ya nambari.
Mabadiliko ya binary-decimal ni muhimu katika nyanja nyingi na maombi:
Anwani ya IPv4 kama 192.168.1.1 inaweza kuwakilishwa kwa binary kama:
Ilipounganishwa: 11000000.10101000.00000001.00000001
Ingawa binary na decimal ndio mifumo ya nambari inayotumika zaidi, mifumo mingine ina matumizi muhimu:
Hexadecimal inatumia tarakimu 16 (0-9 na A-F) na mara nyingi hutumiwa kama njia fupi ya kuwakilisha data ya binary. Kila tarakimu ya hexadecimal inawakilisha tarakimu 4 za binary.
Mfano: Binary 1010 1101 = Hexadecimal AD
Octal inatumia tarakimu 8 (0-7) na ilikuwa muhimu kihistoria katika kompyuta. Kila tarakimu ya octal inawakilisha tarakimu 3 za binary.
Mfano: Binary 101 011 = Octal 53
BCD inawakilisha kila tarakimu ya decimal kwa kutumia idadi fulani ya tarakimu za binary (kawaida 4). Inatumika katika maombi ambapo uwakilishi wa decimal unahitajika, kama vile saa za kidijitali.
Mfano: Decimal 42 katika BCD = 0100 0010
Mfumo wa decimal umekuwa mfumo wa nambari unaotumiwa zaidi katika historia ya binadamu, labda kwa sababu wanadamu wana vidole kumi. Ushahidi wa mifumo ya kuhesabu ya decimal unarudi nyuma kwa ustaarabu wa kale:
Mfumo wa binary una historia ya hivi karibuni lakini yenye kuvutia sawa:
Hapa kuna utekelezaji wa mabadiliko ya binary-decimal katika lugha mbalimbali za programu:
1// Mabadiliko ya Binary hadi Decimal
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "Nambari ya binary si sahihi";
5 }
6 return parseInt(binary, 2);
7}
8
9// Mabadiliko ya Decimal hadi Binary
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "Nambari ya decimal si sahihi";
13 }
14 return Number(decimal).toString(2);
15}
16
17// Matumizi ya mfano
18console.log(binaryToDecimal("1010")); // Inatoa: 10
19console.log(decimalToBinary("42")); // Inatoa: 101010
20
1# Mabadiliko ya Binary hadi Decimal
2def binary_to_decimal(binary):
3 try:
4 # Kagua ikiwa ingizo lina 0s na 1s pekee
5 if not all(bit in '01' for bit in binary):
6 return "Nambari ya binary si sahihi"
7 return int(binary, 2)
8 except ValueError:
9 return "Nambari ya binary si sahihi"
10
11# Mabadiliko ya Decimal hadi Binary
12def decimal_to_binary(decimal):
13 try:
14 # Kagua ikiwa ingizo ni nambari isiyo na hasi
15 decimal = int(decimal)
16 if decimal < 0:
17 return "Nambari ya decimal si sahihi"
18 return bin(decimal)[2:] # Ondoa kiambishi '0b'
19 except ValueError:
20 return "Nambari ya decimal si sahihi"
21
22# Matumizi ya mfano
23print(binary_to_decimal("1010")) # Inatoa: 10
24print(decimal_to_binary("42")) # Inatoa: 101010
25
1public class BinaryDecimalConverter {
2 // Mabadiliko ya Binary hadi Decimal
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("Nambari ya binary si sahihi");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // Mabadiliko ya Decimal hadi Binary
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("Nambari hasi hazikubaliwi");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // Inatoa: 10
20 System.out.println(decimalToBinary(42)); // Inatoa: 101010
21 }
22}
23
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// Mabadiliko ya Binary hadi Decimal
7int binaryToDecimal(const std::string& binary) {
8 // Kagua ikiwa ingizo lina 0s na 1s pekee
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("Nambari ya binary si sahihi");
11 }
12
13 int decimal = 0;
14 for (int i = 0; i < binary.length(); i++) {
15 if (binary[binary.length() - 1 - i] == '1') {
16 decimal += std::pow(2, i);
17 }
18 }
19 return decimal;
20}
21
22// Mabadiliko ya Decimal hadi Binary
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("Nambari hasi hazikubaliwi");
26 }
27
28 if (decimal == 0) {
29 return "0";
30 }
31
32 std::string binary = "";
33 while (decimal > 0) {
34 binary = (decimal % 2 == 0 ? "0" : "1") + binary;
35 decimal /= 2;
36 }
37 return binary;
38}
39
40int main() {
41 std::cout << binaryToDecimal("1010") << std::endl; // Inatoa: 10
42 std::cout << decimalToBinary(42) << std::endl; // Inatoa: 101010
43 return 0;
44}
45
1' Mabadiliko ya Binary hadi Decimal
2Function BinaryToDecimal(binary As String) As Variant
3 ' Kagua ikiwa ingizo lina 0s na 1s pekee
4 Dim i As Integer
5 For i = 1 To Len(binary)
6 If Mid(binary, i, 1) <> "0" And Mid(binary, i, 1) <> "1" Then
7 BinaryToDecimal = CVErr(xlErrValue)
8 Exit Function
9 End If
10 Next i
11
12 BinaryToDecimal = Application.WorksheetFunction.Bin2Dec(binary)
13End Function
14
15' Mabadiliko ya Decimal hadi Binary
16Function DecimalToBinary(decimal As Long) As String
17 If decimal < 0 Then
18 DecimalToBinary = CVErr(xlErrValue)
19 Exit Function
20 End If
21
22 DecimalToBinary = Application.WorksheetFunction.Dec2Bin(decimal)
23End Function
24
25' Matumizi ya mfano katika seli:
26' =BinaryToDecimal("1010") ' Inarudisha: 10
27' =DecimalToBinary(42) ' Inarudisha: 101010
28
Nambari ya binary ni nambari inayowakilishwa katika mfumo wa nambari wa msingi-2, ambao unatumia alama mbili pekee: kwa kawaida "0" na "1". Kila tarakimu inaitwa bit (tarakimu ya binary). Nambari za binary ni za msingi kwa kompyuta za kidijitali kwani data yote katika kompyuta hatimaye inawakilishwa kwa binary.
Kompyuta zinatumia binary kwa sababu sehemu za umeme zinaweza kwa urahisi kuwakilisha hali mbili: kuwashwa/kuzima, voltage ya juu/ya chini, au polarities za magnetic. Binary pia ni rahisi kimaandishi kutekeleza katika vifaa, na kufanya kompyuta kuwa za kuaminika na zenye ufanisi zaidi. Zaidi ya hayo, mantiki ya Boolean (AND, OR, NOT) inalingana kikamilifu na operesheni za binary.
Ili kubadilisha nambari ya binary kuwa decimal kwa mikono:
Kwa mfano, binary 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
Ili kubadilisha nambari ya decimal kuwa binary kwa mikono:
Kwa mfano, decimal 13: 13 ÷ 2 = 6 baki 1 6 ÷ 2 = 3 baki 0 3 ÷ 2 = 1 baki 1 1 ÷ 2 = 0 baki 1 Kusoma kutoka chini kwenda juu: 1101
Utekelezaji wetu wa sasa unazingatia nambari zisizo na hasi kwa urahisi na madhumuni ya kielimu. Nambari hasi katika binary kwa kawaida hutumia mbinu kama vile nguvu iliyosainiwa, kamili ya moja, au kamili ya mbili, ambazo ni dhana za juu zaidi.
Mkonvershi unaweza kushughulikia nambari za jumla hadi mpaka mipaka salama ya JavaScript (2^53 - 1), ambayo ni 9,007,199,254,740,991. Kwa ingizo la binary, hii inamaanisha hadi bit 53. Kwa nambari kubwa sana, maktaba maalum zingehitajika.
Fractions za decimal zinawakilishwa kwa binary kwa kutumia fractions za binary. Kwa mfano, 0.5 decimal ni 0.1 binary (1×2^-1). Mchakato unahusisha kuzidisha sehemu ya fractional kwa 2 na kuandika sehemu ya jumla hadi ufikie 0 au uanze kurudiwa. Mkonvershi wetu wa sasa unazingatia nambari nzima pekee.
Makosa ya kawaida ni pamoja na:
Kumbukumbu za kompyuta zimeandaliwa kama mfuatano wa maeneo yanayoweza kupatikana. Kila eneo lina anwani ya kipekee, ambayo kimsingi ni nambari. Anwani hizi zinawakilishwa kwa binary ndani ya mzunguko wa kompyuta. Wakati programu inahitaji kufikia kumbukumbu, inabainisha anwani ya binary ya eneo lililotakiwa.
Mifumo hii yote ni mifumo ya nambari ya nafasi lakini kwa misingi tofauti. Hexadecimal na octal mara nyingi hutumiwa kama njia fupi ya kuwakilisha data ya binary, ambapo kila tarakimu ya hexadecimal inawakilisha tarakimu 4 za binary na kila tarakimu ya octal inawakilisha tarakimu 3 za binary.
Knuth, Donald E. "Sanaa ya Programu ya Kompyuta, Kiwango cha 2: Algorithms za Seminumerical." Addison-Wesley, 1997.
Leibniz, Gottfried Wilhelm. "Ufafanuzi wa Hesabu ya Binary." Mémoires de l'Académie Royale des Sciences, 1703.
Boole, George. "Uchunguzi wa Sheria za Fikra." Dover Publications, 1854 (imechapishwa tena 1958).
Shannon, Claude E. "Uchambuzi wa Alama za Relay na Mizunguko ya Kuzima." Transactions of the American Institute of Electrical Engineers, vol. 57, no. 12, 1938, pp. 713-723.
Ifrah, Georges. "Historia ya Ulimwengu wa Nambari: Kutoka kwa Historia hadi Uvumbuzi wa Kompyuta." Wiley, 2000.
"Nambari ya Binary." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Binary_number. Upatikanaji wa 15 Agosti 2023.
"Decimal." Wikipedia, Wikimedia Foundation, https://en.wikipedia.org/wiki/Decimal. Upatikanaji wa 15 Agosti 2023.
"Mabadiliko ya Mfumo wa Nambari." Taasisi ya Kitaifa ya Viwango na Teknolojia, https://www.nist.gov/dads/HTML/numbersysconv.html. Upatikanaji wa 15 Agosti 2023.
Jaribu Mkonvershi wetu wa Binary-Decimal sasa ili kubadilisha kati ya mifumo ya nambari za binary na decimal kwa haraka na kwa usahihi. Ikiwa unajifunza sayansi ya kompyuta, unafanya kazi kwenye miradi ya elektroniki ya kidijitali, au unataka tu kujua jinsi kompyuta zinavyowakilisha nambari, chombo chetu kinahakikisha mchakato wa kubadilisha unakuwa rahisi na wa kielimu.
Gundua zana zaidi ambazo zinaweza kuwa na manufaa kwa mtiririko wako wa kazi