Лесно преобразувайте числа между двоичната и десетичната системи с този безплатен онлайн инструмент. Моментално преобразуване с образователна визуализация.
Моментално конвертирайте между двоичната и десетичната числови системи.
Двоичните числа използват само 0 и 1
Десетичните числа използват цифри 0-9
Въведете стойност в полето, за да видите конверсията в другото поле.
Конверторът Бинарно-Десетичен е основен инструмент за всеки, който работи с различни числови системи. Бинарната (база-2) и десетичната (база-10) са две основни числови системи, използвани в компютърството и математиката. Нашият конвертор от бинарно към десетично позволява мигновено да превеждате числа между тези системи с перфектна точност. Независимо дали сте студент по компютърни науки, който учи за бинарното представяне, програмист, който отстранява грешки в код, или ентусиаст по електроника, работещ с цифрови вериги, този конвертор опростява процеса на преобразуване между бинарни и десетични числови формати, без да изисква сложни ръчни изчисления.
Бинарните числа, състоящи се само от 0 и 1, формират основата на всички цифрови компютърни системи, докато десетичната система с цифри 0-9 е това, което използваме в ежедневието. Разбирането на връзката между тези системи е от съществено значение за всеки, който е ангажиран в компютърните науки, програмирането или цифровата електроника. Този инструмент запълва пропастта между тези числови системи, правейки преобразуванията без усилие и без грешки.
Десетичната система е нашата стандартна числова система, използваща 10 цифри (0-9). В тази позиционна числова система всяка позиция на цифрата представлява степен на 10:
Например, десетичното число 427 представлява:
Събирайки тези стойности: 400 + 20 + 7 = 427
Бинарната система използва само две цифри (0 и 1). Всяка позиция в бинарното число представлява степен на 2:
Например, бинарното число 1010 представлява:
Събирайки тези стойности: 8 + 0 + 2 + 0 = 10 в десетична форма
За да преобразувате бинарно число в десетично, умножете всяка цифра по съответната степен на 2 и сумирайте резултатите:
Където:
Пример: Преобразуване на бинарно 1101 в десетично
За да преобразувате десетично число в бинарно, многократно делете числото на 2 и записвайте остатъците в обратен ред:
Пример: Преобразуване на десетично 25 в бинарно
Нашият конвертор бинарно-десетичен е проектиран да бъде интуитивен и лесен за ползване. Следвайте тези прости стъпки, за да преобразувате между бинарни и десетични числа:
Конверторът също така предоставя визуално обяснение на процеса на преобразуване, показвайки ви точно как се извършва всяко преобразуване математически. Тази образователна функция помага да разберете основните принципи на преобразуванията между числовите системи.
Преобразуването между бинарно и десетично е основополагающе в множество области и приложения:
IPv4 адрес като 192.168.1.1 може да бъде представен в бинарна форма като:
Комбинирано: 11000000.10101000.00000001.00000001
Докато бинарната и десетичната са най-често използваните числови системи, други системи имат важни приложения:
Хексадецималната система използва 16 цифри (0-9 и A-F) и често се използва като по-компактен начин за представяне на бинарни данни. Всяка хексадецимална цифра представлява точно 4 бинарни цифри.
Пример: Бинарно 1010 1101 = Хексадецимално AD
Окталната система използва 8 цифри (0-7) и исторически е била важна в компютърството. Всяка октална цифра представлява точно 3 бинарни цифри.
Пример: Бинарно 101 011 = Октално 53
BCD представя всяка десетична цифра, използвайки фиксиран брой бинарни цифри (обикновено 4). Използва се в приложения, където е необходимо десетично представяне, като цифрови часовници.
Пример: Десетично 42 в BCD = 0100 0010
Десетичната система е била преобладаваща числова система в човешката история, вероятно защото хората имат десет пръста. Доказателства за десетични системи за броене датират от древни цивилизации:
Бинарната система има по-скорошна, но също толкова интересна история:
Ето реализации на преобразуването между бинарно и десетично в различни програмни езици:
1// Преобразуване от бинарно в десетично
2function binaryToDecimal(binary) {
3 if (!/^[01]+$/.test(binary)) {
4 return "Невалидно бинарно число";
5 }
6 return parseInt(binary, 2);
7}
8
9// Преобразуване от десетично в бинарно
10function decimalToBinary(decimal) {
11 if (!/^\d+$/.test(decimal) || decimal < 0) {
12 return "Невалидно десетично число";
13 }
14 return Number(decimal).toString(2);
15}
16
17// Пример за употреба
18console.log(binaryToDecimal("1010")); // Изход: 10
19console.log(decimalToBinary("42")); // Изход: 101010
20
1# Преобразуване от бинарно в десетично
2def binary_to_decimal(binary):
3 try:
4 # Проверка дали входът съдържа само 0 и 1
5 if not all(bit in '01' for bit in binary):
6 return "Невалидно бинарно число"
7 return int(binary, 2)
8 except ValueError:
9 return "Невалидно бинарно число"
10
11# Преобразуване от десетично в бинарно
12def decimal_to_binary(decimal):
13 try:
14 # Проверка дали входът е ненегативно цяло число
15 decimal = int(decimal)
16 if decimal < 0:
17 return "Невалидно десетично число"
18 return bin(decimal)[2:] # Премахване на префикса '0b'
19 except ValueError:
20 return "Невалидно десетично число"
21
22# Пример за употреба
23print(binary_to_decimal("1010")) # Изход: 10
24print(decimal_to_binary("42")) # Изход: 101010
25
1public class BinaryDecimalConverter {
2 // Преобразуване от бинарно в десетично
3 public static int binaryToDecimal(String binary) {
4 if (!binary.matches("[01]+")) {
5 throw new IllegalArgumentException("Невалидно бинарно число");
6 }
7 return Integer.parseInt(binary, 2);
8 }
9
10 // Преобразуване от десетично в бинарно
11 public static String decimalToBinary(int decimal) {
12 if (decimal < 0) {
13 throw new IllegalArgumentException("Негативните числа не са поддържани");
14 }
15 return Integer.toBinaryString(decimal);
16 }
17
18 public static void main(String[] args) {
19 System.out.println(binaryToDecimal("1010")); // Изход: 10
20 System.out.println(decimalToBinary(42)); // Изход: 101010
21 }
22}
23
1#include <iostream>
2#include <string>
3#include <cmath>
4#include <regex>
5
6// Преобразуване от бинарно в десетично
7int binaryToDecimal(const std::string& binary) {
8 // Проверка дали входът съдържа само 0 и 1
9 if (!std::regex_match(binary, std::regex("[01]+"))) {
10 throw std::invalid_argument("Невалидно бинарно число");
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// Преобразуване от десетично в бинарно
23std::string decimalToBinary(int decimal) {
24 if (decimal < 0) {
25 throw std::invalid_argument("Негативните числа не са поддържани");
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; // Изход: 10
42 std::cout << decimalToBinary(42) << std::endl; // Изход: 101010
43 return 0;
44}
45
1' Преобразуване от бинарно в десетично
2Function BinaryToDecimal(binary As String) As Variant
3 ' Проверка дали входът съдържа само 0 и 1
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' Преобразуване от десетично в бинарно
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' Пример за употреба в клетка:
26' =BinaryToDecimal("1010") ' Връща: 10
27' =DecimalToBinary(42) ' Връща: 101010
28
Бинарно число е число, изразено в числовата система с база-2, която използва само два символа: обикновено "0" и "1". Всяка цифра се нарича бит (бинарна цифра). Бинарните числа са основополагающи за цифровото компютърство, тъй като всички данни в компютрите в крайна сметка се представят в бинарна форма.
Компютрите използват бинарна, защото електронните компоненти лесно могат да представят две състояния: включено/изключено, високо/ниско напрежение или магнитни полярности. Бинарната система е също така математически по-проста за реализиране в хардуер, което прави компютрите по-надеждни и ефективни. Освен това, булевата логика (AND, OR, NOT) перфектно се съчетава с бинарните операции.
За да преобразувате бинарно число в десетично ръчно:
Например, бинарно 1101: 1×8 + 1×4 + 0×2 + 1×1 = 8 + 4 + 0 + 1 = 13
За да преобразувате десетично число в бинарно ръчно:
Например, десетично 13: 13 ÷ 2 = 6 остатък 1 6 ÷ 2 = 3 остатък 0 3 ÷ 2 = 1 остатък 1 1 ÷ 2 = 0 остатък 1 Четене отдолу нагоре: 1101
Нашата текуща реализация се фокусира върху ненегативни цели числа за простота и образователни цели. Негативните числа в бинарната система обикновено използват техники като представяне с знак, комплементарно представяне или представяне с два комплемента, които са по-напреднали концепции.
Конверторът може да обработва цели числа до безопасния лимит на JavaScript (2^53 - 1), който е 9,007,199,254,740,991. За бинарни входове това означава до 53 бита. За изключително големи числа биха били необходими специализирани библиотеки.
Десетичните дроби се представят в бинарна форма, използвайки бинарни дроби. Например, 0.5 десетично е 0.1 бинарно (1×2^-1). Процесът включва умножаване на дробната част по 2 и записване на целочислената част, докато не достигнете 0 или не започнете да повтаряте. Нашият текущ конвертор се фокусира само върху цели числа.
Общите грешки включват:
Компютърната памет е организирана като последователност от адресируеми местоположения. Всяко местоположение има уникален адрес, който по същество е число. Тези адреси се представят в бинарна форма в схемата на компютъра. Когато програма трябва да получи достъп до памет, тя посочва бинарния адрес на желаното местоположение.
Всички три са позиционни числови системи, но с различни бази. Хексадецималната и окталната често се използват като по-компактни начини за представяне на бинарни данни, като всяка хексадецимална цифра представлява 4 бинарни цифри, а всяка октална цифра представлява 3 бинарни цифри.
Кнут, Доналд Е. "Изкуството на компютърното програмиране, том 2: Семинумерични алгоритми." Addison-Wesley, 1997.
Лайбниц, Готфрид Вилхелм. "Обяснение на бинарната аритметика." Мémoires de l'Académie Royale des Sciences, 1703.
Бул, Джордж. "Разследване на законите на мисълта." Dover Publications, 1854 (препечатано 1958).
Шанон, Клод Е. "Символен анализ на релейни и комутационни вериги." Транзакции на Американския институт по електрически инженери, том 57, брой 12, 1938, стр. 713-723.
Ифрах, Жорж. "Универсалната история на числата: От праисторията до изобретяването на компютъра." Wiley, 2000.
"Бинарно число." Уикипедия, Фондация Уикимедия, https://en.wikipedia.org/wiki/Binary_number. Достъпно на 15 август 2023.
"Десетично." Уикипедия, Фондация Уикимедия, https://en.wikipedia.org/wiki/Decimal. Достъпно на 15 август 2023.
"Преобразуване на числови системи." Национален институт по стандарти и технологии, https://www.nist.gov/dads/HTML/numbersysconv.html. Достъпно на 15 август 2023.
Опитайте нашия Конвертор Бинарно-Десетичен сега, за да преобразувате бързо и точно между бинарни и десетични числови системи. Независимо дали учите компютърни науки, работите по проекти с цифрова електроника или просто сте любопитни за начина, по който компютрите представят числа, нашият инструмент прави процеса на преобразуване прост и образователен.
Открийте още инструменти, които може да бъдат полезни за вашия работен процес