Site Loader

Содержание

Системы счисления — презентация онлайн

1. Системы счисления

2. Литература

Острейковский В.А. Информатика: Учеб.
для вузов .-М. : Высш. шк.,2000

3. Система счисления

Система счисления — это метод записи
чисел с помощью набора специальных
знаков, которые называются цифрами.
Множество цифр, используемых в системе
счисления, называется алфавитом.
Системы счисления бывают позиционными
и непозиционными.
Непозиционные системы счисления
Вес цифры (т.е. тот вклад, который она
вносит в значение числа) не зависит от ее
позиции в записи числа.
Пример. Римская система счисления:
в числе ХХХII (тридцать два) вес цифры Х
в любой позиции равен десяти, вес цифры
I в любой позиции равен единице и т.д.

5. Позиционные системы счисления

В позиционных системах счисления
значимость (вес) каждой цифры числа
зависит от позиции, которую она занимает
в числе.
Пример: в числе 757,7 первая семерка
означает 7 сотен, вторая – 7 единиц, а
третья – 7 десятых долей единицы.

6. Позиционные системы счисления

Сама запись числа 757,7 означает
сокращенную запись выражения
700+50+7+0,7 = 7•102+5•101+7•100+7•10-1= 757,7
Любая позиционная система счисления
характеризуется своим основанием.

7. Позиционные системы счисления

За основание системы счисления можно
принять любое натуральное число — 2, 3, 4
и т.д.
Следовательно, возможно бесчисленное
множество позиционных систем: двоичная,
троичная, четверичная и т.д.

8. Алфавит позиционной системы счисления

Для записи чисел в позиционной системе с
основанием q нужен алфавит из q цифр.
Таким образом, основание позиционной
системы счисления — это количество цифр в
её алфавите.
Обычно при q < 10 используют q первых
арабских цифр, а при n > 10 к десяти арабским
цифрам добавляют латинские буквы.

9. Алфавит позиционной системы счисления

Примеры алфавитов нескольких систем:
Если требуется указать основание системы, к
которой относится число, то основание
приписывается нижним индексом к этому
числу. Пример:
1011012, 36718, 3B8F16.

10. Позиционные системы счисления

Запись чисел в каждой из систем счисления с
основанием q означает сокращенную запись
многочлена:
an-1qn-1 + an-2qn-2 +…+ a1q1 + a0q0 + a-1q-1 +…+ a-mq-m,
Здесь:
ai – цифры системы счисления;
n и m – число целых и дробных разрядов,
соответственно.

11. Позиционные системы счисления

Примеры:
Это и есть способ перевода числа из
системы счисления с основанием q в 10-ю
систему счисления.

12. Перевод числа из системы счисления с основанием q в 10-ю систему счисления

Пример.
Дано действительное число 101,012.
Записать его в десятичной системе
счисления.
Решение.
101,012 = 1•22 + 0•21 + 1•20 + 0•2-1 + 1•2-2 = 4 +
0 + 1 + 0 + 0,25 = 5,2510

13. Перевод числа из системы счисления с основанием q в 10-ю систему счисления

Пример: перевести число из 16-ой системы
счисления в 10-ю.
Решение:

14. Задачи

Перевести данные числа в 10-ю систему счисления:
А) 10000012
Б) 1000011111,01012
В) 1216,048
Г) 29А,516

15.

ЗадачиПример. Определить наименьшие основания
позиционных систем счисления, при которых
56X = 63Y.
Решение. Запишем числа в виде многочленов:
56x = 5∙x1 + 6 ∙x0 и 63Y = 6∙y1 + 3 ∙y0
Получаем равенство: 5x + 6 = 6y + 3
Преобразуем равенство: x = (6y — 3)/5
При этом имеем еще 2 ограничения:
Х > 6 и Y > 6.
Теперь нужно найти значения X и Y,
удовлетворяющие всем трем условиям.

16. Пример

Перебирая значения Y>6 по возрастанию,
подбираем такое при котором X должно
быть целое:
Y=7: x = (6 ∙ 7 — 3)/5 = 39 / 5 – не целое
Y=8: x = (6 ∙ 8 — 3)/5 = 45 / 5 = 9
Ответ: Y = 8, X = 9.

17. Порождение чисел в позиционных системах счисления

В системе счисления цифры упорядочены в соответствии с
их значениями: 1 > 0, 2 > 1 и т.д.
Порождаются числа в позиционных системах счисления с
помощью правила продвижения цифры.
Продвижение цифры – это замена её на следующую по
величине.
Продвинуть цифру 1 значит заменить её на 2, продвинуть
цифру 2 значит заменить её на 3 и т. д.
Продвинуть старшую цифру (например, 9 в 10-ой системе)
значит заменить её на 0.
В двоичной системе, использующей только две цифры – 0 и
1, продвижение 0 означает замену его на 1, а
продвижение 1 – замену её на 0.

18. Порождение чисел в позиционных системах счисления

Целые числа в любой системе счисления
порождаются с помощью Правила счета:
Для образования целого числа, следующего за
любым данным целым числом, нужно
продвинуть самую правую цифру числа;
если какая-либо цифра после продвижения
стала нулем, то нужно продвинуть цифру,
стоящую слева от неё.

19. Порождение чисел в позиционных системах счисления

Пример. Применяя правило счета, записать
первые десять целых чисел в 2-ой, 3-ой, 5ой, 8-ой системах счисления.
Решение.
2-я: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001;
3-я: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100;
5-я: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14;
8-я: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11.

20. Перевод целых десятичных чисел в систему счисления с основанием q

При переводе целого десятичного числа Х в
систему с основанием q данное число
нужно последовательно делить на q до тех
пор, пока не будет получен остаток < q.
Число в системе с основанием q
записывается как последовательность
остатков от деления, записанных в
обратном порядке, начиная с последнего.

21. Перевод целых десятичных чисел в систему счисления с основанием q

Пример. Перевести число 7510 из 10-й в 2-ю с.с.
Решение.
1 001 0112

22. Задача

Перевести число 3710 в 2-ю.
Решение.
Ответ: 3710 = 1001012 .

23. Перевод целых десятичных чисел в систему счисления с основанием q

Пример. Перевести число 31510 в 8-ю и 16-ю с.с.
Решение.
8-я с.с.
16-я с.с.
Ответ:
31510 = 4738 = 13B16
Примечание. 1110 – это B16.

24. Задача

Перевести число 7510 в восьмеричную и
шестнадцатеричную:
72
3 8
1
1
1138
Ответ: 7510 = 1138 = 4B16.
64
11
4
4(11)8 = 4В16

25. Перевод правильной десятичной дроби в систему счисления с основанием q

1. Дробь умножается на q.
2. Результат умножения разделяется на 2 части целая часть произведения записывается в
результат, а дробная снова умножается.
3. Умножение производится, пока дробная часть
произведения не станет равной нулю (дробь
переводится точно), или не выявится период или
не будет достигнута заданная точность (например,
до 5 знаков после запятой).

26. Перевод правильной десятичной дроби в систему счисления с основанием q

Пример. Перевести десятичную дробь 0,1875 в 2-ю, 8-ю и 16-ю c.с.
Решение.
2-я
8-я
16-я
0,1875
×
2
0,3750
×
2
0,750
× 2
1,50
× 2
1,00
0,1875
×
8
0,5000
× 2
4,0
0,1875
×
16
11350
1 875
3,0000
Результат: 0,316
Результат: 0,148
Результат: 0,00112
Здесь в левом столбце находится целая часть чисел, а в
правом — дробная. Умножается только дробная.
Ответ: 0,187510 = 0,00112 = 0,148 = 0,316

27. Задача

Пример: Перевести число 0,3510 в 2-ю с.с.
Решение.
0, 35
×
2
0, 70
× 2
1, 4
× 2
0, 8
× 2
1, 6
× 2
1, 2
× 4
0, 8
× 2
1, 6 и т.д
Результат: 0,3510 = 0,0101101…2 = 0,01(011)2

28. Задача

Пример: Перевести число 0,3510 в 8-ю с.с.
Решение.
0, 35
×
8
2, 80
× 8
6, 4
× 8
3, 2
× 8
1, 6
× 2
1, 2
× 4
0, 8
× 8
6, 4 и т.д.
Результат: 0,3510 = 0,2631106…8 = = 0,2(63110)8

29. Задача

Пример: Перевести число 0,3510 в 2-ю, 8-ю и 16-ю.
Решение.
0, 35
× 16
5, 60
×16
9, 6
× 16
9, 6 и т.д.
Результат: 0,3510 = 0,5(9)16

30. Перевод смешанных десятичной чисел в систему счисления с основанием q

Перевод смешанных чисел, содержащих целую
и дробную части:
1. Переводится целая часть по алгоритму
перевода целых чисел.
2. Переводится дробная часть по алгоритму
перевода правильной десятичной дроби .
3. В итоговой записи числа в новой системе
счисления целая часть отделяется от
дробной запятой (точкой).

31. Задачи

1. Перевести число 20,37510 в 2-ю, 8-ю и 16-ю.
Ответ: 20,37510 =10100,0112 = 24,38 = 14,316
2. Перевести число 44,289062510 в 2-ю, 8-ю и
16-ю.
Ответ: 44,289062510 = 101100,01001012 = 54,2218 =
2С,4А16

32. Схема быстрого перевода между системами счисления, основания которых – это степени одного числа

Пример таких оснований — 2, 4, 8, 16.
Перевод осуществляется через систему счисления,
основание которой равно возводимому степень
числу. Для примера – это двоичная с.с.
Перевод 8-х чисел в 2-ю с.с.: каждую 8-ю цифру
заменяем эквивалентной ей двоичной триадой тройкой цифр (23 = 8).
Перевод 16-х чисел в 2-ю с.с.: каждую 16-ю цифру
заменяем эквивалентной ей двоичной тетрадой
— четверкой цифр (24 = 16).

33.

Схема быстрого перевода между системами счисления, основания которых – это степени одного числаТаблицы перевода:
10 — я
0
1
2
3
2–я
00
01
10
11
4–я
0
1
2
3
10 — я
0
1
2
3
4
5
6
7
2–я
000
001
010
011
100
101
110
111
8–я
0
1
2
3
4
5
6
7
10 — я
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2–я
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
16 – я
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

34. Схема быстрого перевода между системами счисления, основания которых – это степени одного числа

Пример: Число 1111010101,112 перевести в 16-ю с.с.
Решение:

35. Задачи

Перевести число 10101001,101112 :
А) в 8-ю
Б) в 16-ю

36.

Арифметические операции в системе счисления с основанием qПравила выполнения сложения, вычитания,
умножения и деления те же, что и в
десятичной системе счисления —сложение,
вычитание и умножение выполняются
столбиком, а деление углом.
Эти правила применимы и ко всем другим
позиционным системам счисления

37. Двоичная система счисления: сложение

Таблица сложения:
Пример: Сложить число 11112 и 1102
перенос

38. Задача

Сложить два числа:
Решение.

39. Восьмеричная система счисления: сложение

Пример. 75368 + 4728
Решение. 7 5 3 68
+
4 7 28
7 9(10)8
-8
7 9(11)0
-8
7(10)3 0
-8
8 2 30
-8
1 0 2 3 08 Ответ: 75368 + 4728 = 102308

40. 16-я система счисления: сложение

Пример. 7B3E16 + 7AD16
Решение. Сначала заменим буквы числами
7B3E16 + 7AD16 = 7(11)3(14)16+ 7(10)(13)16
7 (11) 3 (14)16
+ 7 (10) (13)16
7 (18) (13) (27)
— 16
7 (18) (14) (11)
— 16
8 2 (14) (11)
Заменим числа на буквы :
8 2 E
B 16
Ответ: 7B3E16 + 7AD16 = 82EB16

41.

Задачи1.
Решение:
Ответ: 311,28
2. A8D,816 + 93B,C16
Ответ: 13C9,416

42. Двоичная система счисления: вычитание

Выполнить действие:
Решение:
Ответ:
= 10001101,12

43. Задача

1100000011,0112 — 101010111,1(2)
Решение:

Ответ: 110101011,1112

44. 8-я система счисления: вычитание

Выполнить действие:
Решение:
Ответ:
= 215,48

45. Задача

1510,28 – 1230,548
Решение:

Ответ: 257,448

46. 16-я система счисления: вычитание

Выполнить действие:
Решение:
(12) 9 , 4
3 (11),(12)
8 (13), 8
Ответ:
= 8D,816

47. Задача

Вычислить: 27D,D816 – 191,216
Решение:
1 — заём

2 7 (13),(13) 8
1 9 1 , 2
(14)(12),(11) 8
Ответ: 27D,D816 – 191,216 = EC,B816

48. 2-я система счисления: умножение

При умножении в двоичной системе счисления
выполняется по правилам умножения в столбик.
Пример: 1001112 10001112
Решение:
Ответ: 1001112 10001112 = 1010110100012

49.

ЗадачаВыполнить умножение:
Ответ: 11100112 ● 1100112 = 10110111010012

50. 8-я система счисления: умножение

Пример. Вычислить 1638 × 638
Умножаем на разряды 2-го
Решение. × 2 6 38
сомножителя, пока не учитывая
5 38
перенос.
Теперь, начиная с младших,
6 (18) 9
+
последовательно корректируем
10 (30) (15)
разряды, значение которых > 7:
10 (36) (34) 1
9 : 8 = частное 1 и остаток 1
10 (40) 2 1 Частное – это перенос, остаток –
это цифра разряда.
(15) 0 2 1
34 : 8 = частное 4 и остаток 2
40 : 8 = частное 5 и остаток 0
Заменяем двухразрядные числа на буквы:
Ответ: 1638 × 638 = F0218

51. Задача

Выполнить умножение:
Ответ: = 133518

52. 16-я система счисления: умножение

Пример. Вычислить 61A16 40D16
Решение. Заменяем буквы числами и перемножаем:
6 1 (10)16 Умножаем на разряды 2-го
× 4 0 (13) сомножителя, пока не учитывая
16
перенос.
(78)(13)(130)
Начиная с младших,
+
(24) 4 (40)
корректируем разряды,
значение которых > 15:
(24) 4(118)(13)(130)
130 : 16 = частное 8 и остаток 2
(24) 4(118)(21) 2
21 : 16 = частое 1 и остаток 5
(24) 4(119) 5 2
119 : 16 = частое 7 и остаток 7
24 : 16 = частое 1 и остаток 8
(24)(11) 7 5 2
Заменяем числа > 9 на буквы.
1 8 (11) 7 5 2
Ответ: 61A16 40D16 = 18B75216

53. Задача

Выполнить умножение: 173C16 4FA16
Ответ: = 73A09816

16 в 16 ричной системе счисления. Перевод чисел из одной системы счисления в другую онлайн

Теперь предстоит совсем легкая прогулка, связанная с шестнадцатеричной системой счисления. В этом случае, надеемся, вы подозреваете и, видимо, справедливо, что у нас должно теперь быть 16 различных цифр.

Но, как мы знаем, традиционных («арабских») цифр всего десять. А требуется шестнадцать. Получается, что не хватает шести знаков.

Замечание
Таким образом, возникает чисто дизайнерская задача по теме «Знаки» — придумать недостающие символы для цифр
.

Значит, в свое время специалистам необходимо было придумать какие-нибудь новые знаки. Но когда-то, в начале компьютерной эры, особого выбора в знаках не было. Программисты располагали только знаками цифр и букв. Поэтому они пошли по элементарному пути: взяли первые буквы латинского алфавита в качестве цифр, тем более что исторически это не первый случай (мы уже упоминали, что первоначально вместо цифр многие народы использовали буквы).

Замечание
Надеемся, что всем понятно, почему в этом случае нельзя использовать, например, числа «10», «11», «12» и т. д.? Потому что, если мы говорим о шестнадцатеричной системе счисления, то должно быть шестнадцать цифр , а не чисел
.

И десятичное число «10» стали обозначать латинской буквой «А» (точнее, «цифрой А»). Соответственно, дальше идут цифры «В», «С», «D», «Е» и «Р.

Поскольку мы намеревались построить шестнадцатеричную систему, то, начиная с нуля, здесь как раз и получится 16 цифр. Например, цифра «D» — это десятичное число «13», а цифра «F» — это десятичное число «15».

Когда к шестнадцатеричному числу «F» прибавляем единицу, то, поскольку эти цифры у нас кончились, в этом разряде ставим «О», а в следующий разряд переносим единицу, поэтому получается, что десятичное число «16» будет представлено в шестнадцатеричной системе счисления числом «10», т. е. получается «шестнадцатеричная десятка». Соединим десятичные и шестнадцатеричные числа в единую таблицу (табл.

4.5).

Таблица 4.5 . Соответствие десятичных и шестнадцатеричных чисел.

Десятичное числоШестнадцатеричное числоДесятичное числоШестнадцатеричное число
0-9 0-9
29
1D
10 А30
11 В31 1F
12 С32-41 20-29
13 D42-47 2A-2F
14 Е48-255 30-FF
15 F256 100
16 10512 200
17-25 11-191024 400
26
1280 500
27 4096 1000
28 1C

Шестнадцатеричная система используется, чтобы более компактно записывать двоичную информацию. В самом деле, «шестнадцатеричная тысяча», состоящая из четырех разрядов, в двоичном виде занимает тринадцать разрядов (1000 16 = 1000000000000 2).

При обсуждении систем счисления неоднократно фигурировали «десятки», «сотни» и «тысячи», поэтому необходимо обратить внимание на так называемые «круглые» числа.

Таблица 2.4. 16-ричная система кодирования
Десятичная система 16-ричная система Десятичная система 16-ричная система
00 (0000)10A (1010)
11(0001)11B (1011)
22 (0010)12C (1100)
33 (0011)13D (1101)
44 (0100)14E (1110)
55 (0101)15
F (1111)
66 (0110)1610 (00010000)
77 (0111)1711 (00010001)
88 (1000)1812 (00010010)
9
9 (1001)
1913 (00010011)

Для перевода 16-ричного числа в десятичное необходимо умножить значение младшего (нулевого) разряда на единицу, значение следующего (первого) разряда на 16, второго разряда на 256 (16 2) и т. д., а затем сложить все произведения. Например, возьмем число A17F :

A17F=F*16 0 + 7*16 1 + 1*16 2 + A*16 3 = 15*1 + 7*16+1*256+10*4096=41343

Таблица 2.5. 8-ричная система кодирования
Десятичная система
8-ричная система Десятичная система 8-ричная система
00 (000)1012 (001010)
11(001)1113 (001011)
22 (010)
12
14 (001100)
33 (011)1315 (001101)
44 (100)1416 (001110)
55 (101)1517 (001111)
6
6 (110)
1620 (010000)
77 (111)1721 (010001)
810 (001000)1822 (010010)
911 (001001)1923 (010011)

Но каждому специалисту по цифровой аппаратуре (разработчику, оператору, ремонтнику, программисту и т.

д.) необходимо научиться так же свободно обращаться с 16-ричной и двоичной системами, как и с обычной десятичной, чтобы никаких переводов из системы в систему не требовалось.

Значительно реже, чем 16-ричное, используется восьмеричное кодирование , которое строится по такому же принципу, что и 16-ричное, но двоичные разряды разбиваются на группы по три разряда. Каждая группа (разряд кода) затем обозначается одним символом. Каждый разряд 8-ричного кода может принимать восемь значений: 0, 1, 2, 3, 4, 5, 6, 7 (табл. 2.5) .

Помимо рассмотренных кодов, существует также и так называемое двоично-десятичное представление чисел. Как и в 16-ричном коде, в двоично-десятичном коде каждому разряду кода соответствует четыре двоичных разряда, однако каждая группа из четырех двоичных разрядов может принимать не шестнадцать, а только десять значений, кодируемых символами 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. То есть одному десятичному разряду соответствует четыре двоичных. В результате получается, что написание чисел в двоично-десятичном коде ничем не отличается от написания в обычном десятичном коде (табл. 2.6) , но в реальности это всего лишь специальный двоичный код, каждый разряд которого может принимать только два значения: 0 и 1. Двоично-десятичный код иногда очень удобен для организации десятичных цифровых индикаторов и табло.

Таблица 2.6. Двоично-десятичная система кодирования
Десятичная система Двоично-десятичная система Десятичная система Двоично-десятичная система
00 (0000)1010 (00010000)
11(0001)1111 (00010001)
22 (0010)1212 (00010010)
33 (0011)1313 (00010011)
44 (0100)1414 (00010100)
55 (0101)1515 (00010101)
66 (0110)1616 (00010110)
77 (0111)1717 (00010111)
88 (1000)1818 (00011000)
99 (1001)1919 (00011001)

В двоичном коде над числами можно проделывать любые арифметические операции : сложение , вычитание , умножение , деление .

Рассмотрим, например, сложение двух 4-разрядных двоичных чисел. Пусть надо сложить число 0111 (десятичное 7) и 1011 (десятичное 11). Сложение этих чисел не сложнее, чем в десятичном представлении:

При сложении 0 и 0 получаем 0, при сложении 1 и 0 получаем 1, при сложении 1 и 1 получаем 0 и перенос в следующий разряд 1. Результат — 10010 (десятичное 18). При сложении любых двух n-разрядных двоичных чисел может получиться n-разрядное или (n+1) -разрядное число.

Точно так же производится вычитание . Пусть из числа 10010 (18) надо вычесть число 0111 (7). Записываем числа с выравниванием по младшему разряду и вычитаем точно так же, как в случае десятичной системы:

При вычитании 0 из 0 получаем 0, при вычитании 0 из 1 получаем 1, при вычитании 1 из 1 получаем 0, при вычитании 1 из 0 получаем 1 и заем 1 в следующем разряде. Результат — 1011 (десятичное 11).

При вычитании возможно получение отрицательных чисел, поэтому необходимо использовать двоичное представление отрицательных чисел.

Для одновременного представления как двоичных положительных, так и двоичных отрицательных чисел чаще всего используется так называемый дополнительный код . Отрицательные числа в этом коде выражаются таким числом, которое, будучи сложено с положительным числом такой же величины, даст в результате нуль. Для того чтобы получить отрицательное число, надо поменять все биты такого же положительного числа на противоположные (0 на 1, 1 на 0) и прибавить к результату 1. Например, запишем число –5. Число 5 в двоичном коде выглядит 0101. Заменяем биты на противоположные: 1010 и прибавляем единицу: 1011. Суммируем результат с исходным числом: 1011 + 0101 = 0000 (перенос в пятый разряд игнорируем).

по модулю 2 два двоичных числа 0111 и 1011:

Среди других побитовых операций над двоичными числами можно отметить функцию И и функцию ИЛИ. Функция И дает в результате единицу только тогда, когда в соответствующих битах двух исходных чисел обе единицы, в противном случае результат -0. Функция ИЛИ дает в результате единицу тогда, когда хотя бы один из соответствующих битов исходных чисел равен 1, в противном случае результат 0.

Для написания программ на Ассемблере, необходимо разобраться с шестнадцатеричной системой счисления. Ничего сложного в ней нет. Мы используем в жизни десятичную систему. Уверен, что вы все ее знаете, поэтому я постараюсь объяснить шестнадцатеричную систему, проводя аналогию с десятичной.

Итак, в десятичной системе если мы к какому-нибудь числу справа добавим нуль, то это число увеличится в 10 раз. Например: 1 х 10 = 10; 10 х 10 = 100; 100 х 10 = 1000 и т.д. В этой системе мы используем цифры от 0 до 9, т.е. десять разных цифр (собственно, поэтому она и называется десятичная).

В шестнадцатеричной системе мы используем, соответственно, шестнадцать «цифр». Я специально написал слово «цифр» в кавычках, т.к. в ней используются не только цифры. Да и в самом деле как так? Объясняю: от 0 до 9 мы считаем так же, как и в десятичной, а вот дальше будет так: A, B, C, D, E, F. Число F, как не трудно посчитать, будет равно 15 в десятичной системе (см. табл. 1).

Десятичное число

Шестнадцатеричное число

Таблица 1. Десятичная и шестнадцатеричная системы.

Т.о., если мы к какому-нибудь числу в шестнадцатеричной системе добавим справа нуль, то это число увеличится в 16 раз.

Пример 1: 1 х 16 = 10; 10 х 16 = 100; 100 х 16 = 1000 и т.д.

Вы смогли отличить в Примере 1 шестнадцатеричные числа от десятичных? А из этого ряда: 10, 12, 45, 64, 12, 8, 19? Это могут быть как шестнадцатеричные, так и десятичные. Для того, чтобы не было путаницы, и компьютер смог бы однозначно отличить одни числа от других, в Ассемблере принято после шестнадцатеричного числа ставить символ h или H (H это сокращение от англ. hexadecimal (шестнадцатеричное). Для краткости его иногда называют просто Hex ) . А после десятичного ничего не ставить. Т.к. числа от 0 до 9 в обоих системах имеют одинаковые значения, то числа, записанные как 5 и 5h одно и тоже.

Т.о. Пример 1 (см. выше) правильнее будет записать так: 1 х 16 = 10h; 10h x 16 = 100h; 100h x 16 = 1000h. Либо так: 1h x 10h = 10h; 10h x 10h = 100h; 100h x 10h = 1000h.

Для чего нужна шестнадцатеричная система, мы рассмотрим в последующих выпусках. А в данный момент для нашего примера программы, который будет рассмотрен ниже, нам необходимо знать о существовании шестнадцатеричных чисел.

Итак, подведем итог. Шестнадцатеричная система счисления состоит из 10 цифр (от 0 до 9) и 6 букв латинского алфавита (A, B, C, D, E, F). Если к какому-нибудь числу в шестнадцатеричной системе добавим справа нуль, то это число увеличится в 16 раз. Очень важно уяснить данную тему , так как мы будем постоянно использовать ее при написании программ.

Теперь немного о том, как я буду строить примеры на Ассемблере. Не совсем удобно приводить их в HTML-формате, поэтому сперва будет сам код программы с пронумерованными строчками, а сразу же после него объяснения и примечания.

Примерно так:

строкКод программы
(1)mov ah,9

Объяснения:

В строке (1) мы делаем то-то, а в строке (15) то-то.

Огромная просьба: НЕ копируйте программы со страницы в буфер, а затем не вставляйте их в Блокнот (или еще куда-нибудь)! Перепечатывайте их вручную в текстовом редакторе. Если есть принтер, то выделите программу, распечатайте выделенный фрагмент, а затем перебейте в редактор с бумаги. Все примеры нужно набирать самостоятельно! Это ускорит запоминание операторов.

И еще. Строчные и ПРОПИСНЫЕ буквы в Ассемблере не различаются. Записи вида:

Ассемблером воспринимаются одинаково. Можно, конечно, заставить Ассемблер различать строчные и ПРОПИСНЫЕ символы, но мы пока этого делать не будем. Для удобства чтения программы лучше всего операторы печатать строчными буквами, а названия подпрограмм и меток начинать с прописной. Но это как кому будет удобно.

Итак, переходим к нашей первой программе:

(1) CSEG segment

(2) org 100h

(4) Begin:

(6) mov ah,9

(7) mov dx,offset Message

(8) int 21h

(10) int 20h

(11)

(12) Message db «Hello, world!$»

(13) CSEG ends

(14) end Begin

Для того, чтобы объяснить все операторы данного примера, нам потребуется несколько выпусков. Поэтому описание некоторых команд мы просто опустим на данном этапе. Просто считайте, что так должно быть. В самое ближайшее время мы рассмотрим эти операторы подробно. Итак, строки с номерами (1), (2) и (13) вы просто игнорируете.

Строки (3), (5), (9) и (11) остаются пустыми. Это делается для наглядности. Ассемблер их будет просто опускать.

Теперь перейдем к рассмотрению остальных операторов. Со строки (4) начинается код программы. Это метка, указывающая Ассемблеру на начало кода. В строке (14) стоят операторы end Begin ( Begin англ. начало; end конец). Это конец программы. Вообще вместо слова Begin можно было бы использовать что-нибудь другое. Например, Start:. В таком случае, нам пришлось бы и завершать программу End Start (14).

Строки (6) (8) выводят на экран сообщение Hello, world!. Здесь придется вкратце рассказать о регистрах процессора (более подробно эту тему мы рассмотрим в следующем выпуске).

Регистр процессора это специально отведенная память для хранения какого-нибудь числа.

Например:

Если мы хотим сложить два числа, то в математике запишем так:

A, B и C это своего рода регистры (если говорить о компьютере), в которых могут хранится некоторые данные. А=5 можно прочитать как: Присваиваем А число 5 .

Для присвоения регистру какого-нибудь значения, в Ассемблере существует оператор mov (от англ. move загрузить). Строку (6) следует читать так: Загружаем в регистр AH число 9 (проще говоря, присваиваем AH число 9). Ниже рассмотрим зачем это надо.

В строке (7) загружаем в регистр DX адрес сообщения для вывода (в данном примере это будет строка Hello, world!$ ).

Прерывания будут подробно рассматриваться в последующих выпусках. Здесь я скажу несколько слов.

Прерывание MS-DOS это своего рода подпрограмма (часть MS-DOS) , которая находится постоянно в памяти и может вызываться в любое время из любой программы.

Рассмотрим вышесказанное на примере (мелким шрифтом выделим примечания ):

Программа сложения двух чисел

НачалоПрограммы

A=5 в переменную A заносим значение 5

B=8 в переменную B значение 8

ВызовПодпрограммы Сложение

теперь С равно 13

A=10 тоже самое, только другие числа

B=25

ВызовПодпрограммы Сложение

теперь С равно 35

КонецПрограммы

Подпрограмма Сложение

C=A+B

ВозвратИзПодпрограммы возвращаемся в то место, откуда вызывали

КонецПодпрограммы

В данном примере мы дважды вызвали подпрограмму Сложение , которая сложила два числа, переданные ей в переменных A и B. Результат помещается в переменную С. Когда вызывается подпрограмма, компьютер запоминает с какого места она была вызвана, а затем, когда закончила работу подпрограмма, компьютер возвращается в то место, откуда она вызывалась. Т.о. можно вызывать подпрограммы неопределенное количество раз с любого места.

При выполнении строки (8) программы на Ассемблере мы вызываем подпрограмму (в данном случае это называется прерывание), которая выводит на экран строку. Для этого мы, собственно, и помещаем необходимые значения в регистры. Всю необходимую работу (вывод строки, перемещение курсора) берет на себя подпрограмма. Эту строку можно прочитать так: вызываем двадцать первое прерывание ( int от англ. interrupt прерывание). Обратите внимание, что после числа 21 стоит буква h. Это, как мы уже знаем, шестнадцатеричное число (33 в десятичной системе). Конечно, нам ничего не мешает заменить строку int 21h на int 33. Программа будет работать корректно. Просто в Ассемблере принято указывать номер прерывания в шестнадцатеричной системе.

В строке (10) мы, как вы уже догадались, вызываем прерывание 20 h. Для вызова данного прерывания не нужно указывать какие-либо значения в регистрах. Оно выполняет только одну задачу: выход из программы (выход в DOS). В результате выполнения прерывания 20h, программа вернется туда, откуда ее запускали (загружали, вызывали). Например, в Norton Commander или DOS Navigator.

Строка (12) содержит сообщение для вывода. Первое слово ( message сообщение) название сообщения. Оно может быть любым (например, mess или string и пр.). Обратите внимание на строку (7), в которой мы загружаем в регистр DX адрес нашего сообщения.

Можно создать еще одну строку, которую назовем Mess2. Затем, начиная со строки (9) вставим следующие команды:

(10) mov dx,offset Mess2

(13) Message db «Hello, world!$»

(14) Mess2 db «Это Я! $»

и ассемблировать нашу программу заново. Надеюсь, что вы догадались, что произойдет

Обратите внимание на последний символ в строках Message и Mess2 — $. Он указывает на конец строки. Если мы его уберем, то 21 h прерывание продолжит вывод до тех пор, пока не встретится где-нибудь в памяти символ $. На экране мы увидим мусор .

Если у вас есть отладчик, то можно посмотреть как будет работать наша программа.

Целю настоящего выпуска не было разобраться подробно с каждым оператором . Это невозможно, т.к. у вас еще недостаточно знаний. Я полагаю, что уже через 3-4 выпуска вы поймете принцип и структуру программы на Ассемблере. Может быть, вам показался язык Ассемблера чрезвычайно сложным, но это, поверьте, с первого взгляда.

Шестнадцатеричная система счисления. аша первая программа.

Для написания программ на Ассемблере, необходимо разобраться с шестнадцатеричной системой счисления. Ничего сложного в ней нет. Мы используем в жизни десятичную систему. Уверен, что вы все ее знаете, поэтому я постараюсь объяснить шестнадцатеричную систему, проводя аналогию с десятичной.

Итак, в десятичной системе если мы к какому-нибудь числу справа добавим нуль, то это число увеличится в 10 раз. Например: 1 х 10 = 10; 10 х 10 = 100; 100 х 10 = 1000 и т.д. В этой системе мы используем цифры от 0 до 9, т.е. десять разных цифр (собственно, поэтому она и называется десятичная).

В шестнадцатеричной системе мы используем, соответственно, шестнадцать «цифр». Я специально написал слово «цифр» в кавычках, т.к. в ней используются не только цифры. Да и в самом деле как так? Объясняю: от 0 до 9 мы считаем так же, как и в десятичной, а вот дальше будет так: A, B, C, D, E, F. Число F, как не трудно посчитать, будет равно 15 в десятичной системе (см. табл. 1).

Десятичное число

Шестнадцатеричное число

Таблица 1. Десятичная и шестнадцатеричная системы.

Т.о., если мы к какому-нибудь числу в шестнадцатеричной системе добавим справа нуль, то это число увеличится в 16 раз.

Пример 1: 1 х 16 = 10; 10 х 16 = 100; 100 х 16 = 1000 и т.д.

Вы смогли отличить в Примере 1 шестнадцатеричные числа от десятичных? А из этого ряда: 10, 12, 45, 64, 12, 8, 19? Это могут быть как шестнадцатеричные, так и десятичные. Для того, чтобы не было путаницы, и компьютер смог бы однозначно отличить одни числа от других, в Ассемблере принято после шестнадцатеричного числа ставить символ h или H (H это сокращение от англ. hexadecimal (шестнадцатеричное). Для краткости его иногда называют просто Hex ) . А после десятичного ничего не ставить. Т.к. числа от 0 до 9 в обоих системах имеют одинаковые значения, то числа, записанные как 5 и 5h одно и тоже.

Т.о. Пример 1 (см. выше) правильнее будет записать так: 1 х 16 = 10h; 10h x 16 = 100h; 100h x 16 = 1000h. Либо так: 1h x 10h = 10h; 10h x 10h = 100h; 100h x 10h = 1000h.

Для чего нужна шестнадцатеричная система, мы рассмотрим в последующих выпусках. А в данный момент для нашего примера программы, который будет рассмотрен ниже, нам необходимо знать о существовании шестнадцатеричных чисел.

Итак, подведем итог. Шестнадцатеричная система счисления состоит из 10 цифр (от 0 до 9) и 6 букв латинского алфавита (A, B, C, D, E, F). Если к какому-нибудь числу в шестнадцатеричной системе добавим справа нуль, то это число увеличится в 16 раз. Очень важно уяснить данную тему , так как мы будем постоянно использовать ее при написании программ.

Теперь немного о том, как я буду строить примеры на Ассемблере. Не совсем удобно приводить их в HTML-формате, поэтому сперва будет сам код программы с пронумерованными строчками, а сразу же после него объяснения и примечания.

Примерно так:

строкКод программы
(1)mov ah,9

Объяснения:

В строке (1) мы делаем то-то, а в строке (15) то-то.

Огромная просьба: НЕ копируйте программы со страницы в буфер, а затем не вставляйте их в Блокнот (или еще куда-нибудь)! Перепечатывайте их вручную в текстовом редакторе. Если есть принтер, то выделите программу, распечатайте выделенный фрагмент, а затем перебейте в редактор с бумаги. Все примеры нужно набирать самостоятельно! Это ускорит запоминание операторов.

И еще. Строчные и ПРОПИСНЫЕ буквы в Ассемблере не различаются. Записи вида:

Ассемблером воспринимаются одинаково. Можно, конечно, заставить Ассемблер различать строчные и ПРОПИСНЫЕ символы, но мы пока этого делать не будем. Для удобства чтения программы лучше всего операторы печатать строчными буквами, а названия подпрограмм и меток начинать с прописной. Но это как кому будет удобно.

Итак, переходим к нашей первой программе:

(1) CSEG segment

(2) org 100h

(4) Begin:

(6) mov ah,9

(7) mov dx,offset Message

(8) int 21h

(10) int 20h

(11)

(12) Message db «Hello, world!$»

(13) CSEG ends

(14) end Begin

Для того, чтобы объяснить все операторы данного примера, нам потребуется несколько выпусков. Поэтому описание некоторых команд мы просто опустим на данном этапе. Просто считайте, что так должно быть. В самое ближайшее время мы рассмотрим эти операторы подробно. Итак, строки с номерами (1), (2) и (13) вы просто игнорируете.

Строки (3), (5), (9) и (11) остаются пустыми. Это делается для наглядности. Ассемблер их будет просто опускать.

Теперь перейдем к рассмотрению остальных операторов. Со строки (4) начинается код программы. Это метка, указывающая Ассемблеру на начало кода. В строке (14) стоят операторы end Begin ( Begin англ. начало; end конец). Это конец программы. Вообще вместо слова Begin можно было бы использовать что-нибудь другое. Например, Start:. В таком случае, нам пришлось бы и завершать программу End Start (14).

Строки (6) (8) выводят на экран сообщение Hello, world!. Здесь придется вкратце рассказать о регистрах процессора (более подробно эту тему мы рассмотрим в следующем выпуске).

Регистр процессора это специально отведенная память для хранения какого-нибудь числа.

Например:

Если мы хотим сложить два числа, то в математике запишем так:

A, B и C это своего рода регистры (если говорить о компьютере), в которых могут хранится некоторые данные. А=5 можно прочитать как: Присваиваем А число 5 .

Для присвоения регистру какого-нибудь значения, в Ассемблере существует оператор mov (от англ. move загрузить). Строку (6) следует читать так: Загружаем в регистр AH число 9 (проще говоря, присваиваем AH число 9). Ниже рассмотрим зачем это надо.

В строке (7) загружаем в регистр DX адрес сообщения для вывода (в данном примере это будет строка Hello, world!$ ).

Прерывания будут подробно рассматриваться в последующих выпусках. Здесь я скажу несколько слов.

Прерывание MS-DOS это своего рода подпрограмма (часть MS-DOS) , которая находится постоянно в памяти и может вызываться в любое время из любой программы.

Рассмотрим вышесказанное на примере (мелким шрифтом выделим примечания ):

Программа сложения двух чисел

НачалоПрограммы

A=5 в переменную A заносим значение 5

B=8 в переменную B значение 8

ВызовПодпрограммы Сложение

теперь С равно 13

A=10 тоже самое, только другие числа

B=25

ВызовПодпрограммы Сложение

теперь С равно 35

КонецПрограммы

Подпрограмма Сложение

C=A+B

ВозвратИзПодпрограммы возвращаемся в то место, откуда вызывали

КонецПодпрограммы

В данном примере мы дважды вызвали подпрограмму Сложение , которая сложила два числа, переданные ей в переменных A и B. Результат помещается в переменную С. Когда вызывается подпрограмма, компьютер запоминает с какого места она была вызвана, а затем, когда закончила работу подпрограмма, компьютер возвращается в то место, откуда она вызывалась. Т.о. можно вызывать подпрограммы неопределенное количество раз с любого места.

При выполнении строки (8) программы на Ассемблере мы вызываем подпрограмму (в данном случае это называется прерывание), которая выводит на экран строку. Для этого мы, собственно, и помещаем необходимые значения в регистры. Всю необходимую работу (вывод строки, перемещение курсора) берет на себя подпрограмма. Эту строку можно прочитать так: вызываем двадцать первое прерывание ( int от англ. interrupt прерывание). Обратите внимание, что после числа 21 стоит буква h. Это, как мы уже знаем, шестнадцатеричное число (33 в десятичной системе). Конечно, нам ничего не мешает заменить строку int 21h на int 33. Программа будет работать корректно. Просто в Ассемблере принято указывать номер прерывания в шестнадцатеричной системе.

В строке (10) мы, как вы уже догадались, вызываем прерывание 20 h. Для вызова данного прерывания не нужно указывать какие-либо значения в регистрах. Оно выполняет только одну задачу: выход из программы (выход в DOS). В результате выполнения прерывания 20h, программа вернется туда, откуда ее запускали (загружали, вызывали). Например, в Norton Commander или DOS Navigator.

Строка (12) содержит сообщение для вывода. Первое слово ( message сообщение) название сообщения. Оно может быть любым (например, mess или string и пр.). Обратите внимание на строку (7), в которой мы загружаем в регистр DX адрес нашего сообщения.

Можно создать еще одну строку, которую назовем Mess2. Затем, начиная со строки (9) вставим следующие команды:

(10) mov dx,offset Mess2

(13) Message db «Hello, world!$»

(14) Mess2 db «Это Я! $»

и ассемблировать нашу программу заново. Надеюсь, что вы догадались, что произойдет

Обратите внимание на последний символ в строках Message и Mess2 — $. Он указывает на конец строки. Если мы его уберем, то 21 h прерывание продолжит вывод до тех пор, пока не встретится где-нибудь в памяти символ $. На экране мы увидим мусор .

Если у вас есть отладчик, то можно посмотреть как будет работать наша программа.

Целю настоящего выпуска не было разобраться подробно с каждым оператором . Это невозможно, т.к. у вас еще недостаточно знаний. Я полагаю, что уже через 3-4 выпуска вы поймете принцип и структуру программы на Ассемблере. Может быть, вам показался язык Ассемблера чрезвычайно сложным, но это, поверьте, с первого взгляда.

Шестнадцатеричная система счисления (также — шестнадцатеричный код) является позиционной системой счисления с целочисленным основанием 16. Иногда в литературе также используется термин hex (произносится «хекс», сокращение от англ. hexadecimal). Цифрами данной системы счисления принято использовать арабские цифры 0—9, а также первые символы латинского алфавита A—F. Буквы соответствуют следующим десятичным значениями:

  • * A —10;
  • * B —11;
  • * C —12;
  • * D —13;
  • * E — 14;
  • * F — 15.

Таким образом, десять арабских цифр вкупе с шестью латинскими буквами и составляют шестнадцать цифр системы.

Кстати, на нашем сайте вы можете перевести любой текст в десятичный, шестнадцатеричный, двоичный код воспользовавшись Калькулятором кодов онлайн .

Применение . Шестнадцатеричный код широко применяется в низкоуровневом программировании, а также в различных компьютерных справочных документах. Популярность системы обоснована архитектурными решениями современных компьютеров: в них в качестве минимальной единицы информации установлен байт (состоящий из восьми бит) — а значение байта удобно записывать с помощью двух шестнадцатеричных цифр. Значение байта может ранжироваться с #00 до #FF (от 0 до 255 в десятичной записи) — другими словами, используя шестнадцатеричный код , можно записать любое состояние байта, при этом не остаётся «лишних» не используемых в записи цифр.

В кодировке Юникод для записи номера символа используется четыре шестнадцатеричных цифры. Запись цвета стандарта RGB (Red, Green, Blue — красный, зелёный, синий) также часто использует шестнадцатеричный код (например, #FF0000 — запись ярко-красного цвета).

Способ записи шестнадцатеричного кода.

Математический способ записи . В математической записи основание системы записывают в десятичном виде в нижнем индексе справа от числа. Десятичную запись числа 3032 можно записать как 3032 10 , в шестнадцатеричной системе данное число будет иметь запись BD8 16 .

В синтаксисе языков программирования . Синтаксис различных языков программирования по-разному устанавливает формат записи числа, использующего шестнадцатеричный код :

* В синтаксисе некоторых разновидностей языка ассемблера используется латинская буква «h», которая ставится справа от числа, например: 20Dh. Если число начинается с латинской буквы, то перед ним ставится ноль, например: 0A0Bh. Это сделано для того, чтобы отличать от констант значения, использующие шестнадцатеричный код ;

* В прочих разновидностях ассемблера, а также в Pascal (и его разновидностях, таких как Delphi) и некоторых диалектах Basic, применяют префикс «$»: $A15;

* В языке разметки HTML, а также в каскадных файлах CSS, для указания цвета в формате RGB с шестнадцатеричной системой записи, используется префикс «#»: #00DC00.

Как перевести шестнадцатеричный код в другую систему?

Перевод из шестнадцатеричной системы в десятичную. Для совершения операции перевода из шестнадцатеричной системы в десятичную, требуется представить исходное число как сумму произведений цифр в разрядах шестнадцатеричного числа на степень основания.

Двоичная СС

шестнадцатеричная СС

Например, требуется выполнить перевод шестнадцатеричного числа A14: в нём три цифры. Используя правило, запишем его в виде суммы степеней с основанием 16:

A14 16 = 10.16 2 + 1.16 1 + 4.16 0 = 10.256 + 1.16 + 4.1 = 2560 + 16 + 4 = 2580 10

Перевод чисел из двоичной в шестнадцатеричную систему и наоборот.

Для перевода используется таблица тетрад. Чтобы выполнить перевод числа из двоичной в десятичную систему, необходимо произвести разбиение его на отдельные тетрады справа налево, после чего, используя таблицу, выполнить замену каждой тетрады на соответствующую шестнадцатеричную цифру. При этом, если количество цифр не кратно четырём, то необходимо добавить соответствующее количество нулей справа от числа, для того, чтобы общее число двоичных цифр стало кратно четырём.

Таблица тетрад для перевода.

Для перевода из шестнадцатеричной системы в двоичную, необходимо выполнить обратную операцию: выполнить замену каждой цифры на тетраду из таблицы.

Двоичная СС

Восьмеричная СС

Пример перевода из шестнадцатеричной системы в двоичную : A5E 16 = 1010 0101 1110 = 101001011110 2

Пример перевода из двоичной системы в шестнадцатеричную : 111100111 2 = 0001 1110 0111 = 1E7 16

В этом примере количество цифр в исходном двоичном числе не было равным четырём (9), поэтому были добавлены незначащие нули — общее число цифр стало 12.

Автоматический перевод . Быстрый перевод из шестнадцатеричной системы счисления в одну из трёх популярных систем (двоичную, восьмеричную и десятичную), как и обратный перевод, можно выполнить, используя стандартный калькулятор из комплекта поставки ОС Windows. Откройте калькулятор, выберите в меню Вид -> Программист. В данном режиме можно устанавливать систему счисления, используемую в данный момент (см. меню слева: Hex, Dec, Oct, Bin). При этом изменение текущей системы счисления автоматически производит перевод.

Шестнадцатеричная система счисления — КиберПедия

Навигация:

Главная Случайная страница Обратная связь ТОП Интересно знать Избранные

Топ:

Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие…

Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья. ..

Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного…

Интересное:

Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом…

Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего…

Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными…

Дисциплины:

Автоматизация Антропология Археология Архитектура Аудит Биология Бухгалтерия Военная наука Генетика География Геология Демография Журналистика Зоология Иностранные языки Информатика Искусство История Кинематография Компьютеризация Кораблестроение Кулинария Культура Лексикология Лингвистика Литература Логика Маркетинг Математика Машиностроение Медицина Менеджмент Металлургия Метрология Механика Музыкология Науковедение Образование Охрана Труда Педагогика Политология Правоотношение Предпринимательство Приборостроение Программирование Производство Промышленность Психология Радиосвязь Религия Риторика Социология Спорт Стандартизация Статистика Строительство Теология Технологии Торговля Транспорт Фармакология Физика Физиология Философия Финансы Химия Хозяйство Черчение Экология Экономика Электроника Энергетика Юриспруденция

⇐ ПредыдущаяСтр 16 из 16

Алфавит: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (буквы латинского алфавита заменяю недостающие цифры системы счисления и соответствуют числам 10, 11, 12, 13, 14, 15).

Основание S = 16

Базис – степени числа 16: 160, 161, 162, 163, …или 1, 16, 256, 4096, …

Представим любое 16-ричное число через его цифры и веса разрядов:

A5D16 = D×160 + 5×161 + A×162 = 13×1 + 5×16 + 10×256 = 265310

Этим же способом любое 16-ричное число переводится в десятичную систему счисления.

Обратный перевод – из десятичной в 16-ричную систему счисления – осуществляется последовательным деление десятичного числа на основание 16-ричной системы счисления 16 и считыванием остатков от деления справа налево:

2653/16 = 165 остаток 13, то есть D

165/16 = 10 остаток 5

10/16 = 0 остаток 10, то есть A, получаем A5D16.

 

Особый случай перевода – двоично-шестнадцатеричный

Для перевода двоичного числа в 16-ричное необходимо:

1. разбить двоичное число справа налево по четыре цифры (недостающие слева дополнить нулями):

100110001012 = 0100 1100 01012

2. каждую четверку цифр представить числом в 16-ричной системе счисления:

0100 1100 01012 = 4C516

4 12=C 5

Для перевода 16-ричного числа в двоичное необходимо каждую цифру 16-ричного числа представить ее четырехразрядным двоичным эквивалентом:

A5D16 = 1010 0101 11012

A 5 D

Для быстрого перевода чисел из одной системы счисления в другую полезно запомнить следующую таблицу соответствия:

10-я
2-я
16-я A B C D E F

 

Арифметические операции в двоичной системе счисления

Таблица сложения двоичной системы счисления состоит из четырех строк:

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 10 (ноль в младшем разряде и единица переноса в старшем)

 

Сложим два двоичных числа:

Переносы

10110110012

+

1110110112

————-

100101101002

Вычтем одно двоичное число из другого, притом в старшем разряде при необходимости занимаем две единицы младшего:

10111110012

1110110112

————-

1000111102

 

Результат вычитания можно проверить обратным сложением:

1000111102

+

1110110112

————-

10111110012

 

Арифметические операции в восьмеричной системе счисления

 

Они выполняются по знакомым нам правилам вычислений в десятичной системе счисления, за исключением того, что старшая цифра не 9, а 7:

Перенос

5638

+

528

——

6358

 

Рассмотрим образование следующей суммы:

68

+

58

138

Добавляем к первому слагаемому недостающее число до 8 – основания системы счисления. Это число 2, которое мы берем из второго слагаемого. Во втором слагаемом остается 3, которое и записывается в этот разряд, а единица переноса уходит в старший разряд суммы.

При вычитании чисел из старшего разряда при необходимости занимаем восемь единиц младшего:

5238

528

——

4518

 

Арифметические операции в 16-ричной системе счисления

Они выполняются по знакомым нам правилам вычислений в десятичной системе счисления, за исключением того, что старшая цифра не 9, а F (15):

Перенос

9DA16

+

8216

——

A5C16

 

Рассмотрим образование следующей суммы:

D16

+

816

1516

Добавляем к первому слагаемому (D=13) недостающее число до 16 – основания системы счисления. Это число 3, которое мы берем из второго слагаемого. Во втором слагаемом остается 5, которое и записывается в этот разряд, а единица переноса уходит в старший разряд суммы.

При вычитании чисел из старшего разряда при необходимости занимаем шестнадцать единиц младшего:

A5C16

8216

——

9DA16

 

 

Приложение 3

Ошибки при компиляции

Номер ошибки Сообщение Значение
Out of memory Выход за границы памяти
Identifier expected Не указан идентификатор. На этом месте должен находиться идентификатор
Unknown identifier Неизвестный идентификатор. Идентификатор не был описан
Duplicate identifier Повторный идентификатор. Идентификатор уже описан
Syntax error Синтаксическая ошибка. В исходном тексте найден неверный символ
Error in real constant Ошибка в вещественной константе
Error in integer constant Ошибка в константе целого типа
String constant exceeds line Строковая константа превышает допустимые размеры строки
Too many nested files Слишком много вложенных файлов
Unexpected end of file Некорректный конец файла
Line too long Слишком длинная строка
Type identifier expected Требуется идентификатор типа
Too many open files Слишком много открытых файлов
Invalid file name Неверное имя файла. Имя файла неверно или указывает на несуществующий путь
File not found Файл не найден
Disk full Диск заполнен
Invalid compiler directive Неверная директива компилятора
Too many files Слишком много файлов. В компиляции программы или программного модуля задействовано слишком много файлов
Variable identifier expected Требуется идентификатор переменной
Error in type Ошибка в определении типа. Определение типа не может начинаться с этого символа
Structure too large Слишком большая структура. Максимальный размер структурного типа — 64К
Set base type out of range Базовый тип множества вышел за границы. Базовый тип множества должен представлять собой отрезок порядкового типа с границами 0…255 или перечисляемый тип с не более чем 256 значениями
File components may not be files or objects Компоненты файла не могут быть файлами или объектами
Invalid string length Неверная длина строки. Максимальная описываемая длина строки – 255 символов
Type mismatch Несоответствие типов
Invalid subrange base type Неверный базовый тип диапазона. Диапазон можно описывать для данных порядкового типа
Lower bound greater than upper bound Нижняя граница больше верхней
Ordinal type expected Требуется порядковый тип. Действительный, строковый, структурный и указательный типы в данном случае недопустимы
Integer constant expected Требуется целая константа
31 Constant expected Требуется константа
Integer or real constant expected Требуется целая или вещественная константа
Pointer type identifier expected Требуется идентификатор типа указателя
Invalid function result type Неверный тип результата функции. Правильными типами результатами функции являются все простые, строковые и ссылочные типы
Begin expected Требуется слово Begin
End expected Требуется слово End
Integer expression expected Требуется выражение целого типа
Ordinal expression expected Требуется выражение порядкового типа
Boolean expression expected Требуется выражение логического типа
Operand types do not match operator Типы операндов не соответствуют типу оператора
Error in expression Ошибка в выражении
Illegal assignment Неверное присваивание
Object file too large Объектный файл слишком большой – больше 64 К
Code segment too large Сегмент кода слишком большой – больше 64 К
Data segment too large Сегмент данных слишком большой – больше 64 К
Do expected Требуется слово Do
OF expected Требуется слово Of
INTERFACE expected Требуется интерфейсный раздел
THEN expected Требуется слово Then
TO or DOWNTO expected Требуется слово To или DownTo
Division by zero Деление на ноль
Invalid file type Неверный файловый тип
Cannot Read or Write variables of this type Нельзя считать или записать переменные данного типа
Pointer variable expected Требуется использовать переменную-указатель
String variable expected Требуется строковая переменная
String expression expected Требуется выражение строкового типа
Circular unit reference Циклическая ссылка на модуль. В интерфейсном разделе два модуля не могут ссылаться друг на друга
Unit name mismatch Несоответствие имен программных модулей. Имя программного модуля, найденное в файле .tpu , не соответствует имени, указанному в операторе Uses
Implementation expected Требуется раздел реализации – отсутствует ключевое слово Implementation
Constant and case types do not match Типы констант (меток) и тип выражения (переключателя) оператора Case не соответствуют друг другу
Record variable expected Требуется переменная типа запись
Constant out of range Константа выходит за границы допустимых значений
File variable expected Требуется файловая переменная
Pointer expression expected Требуется выражение типа указатель
Integer or real expression expected Требуется выражение целого или вещественного типа
Label already defined Метка уже определена
Undefined label in processing statement part Неопределенная метка в обрабатываемом разделе операторов
Unit expected Требуется слово Unit
‘;’ expected Требуется ‘;’
‘:’ expected Требуется ‘:’
‘,’ expected Требуется ‘,’
‘(’ expected Требуется ‘(’
‘)’ expected Требуется ‘)’
‘=’ expected Требуется ‘=’
‘:=’ expected Требуется ‘:=’
‘[’or ‘(‘ expected Требуется ‘[’ или ‘(‘
‘]’or ‘)‘ expected Требуется ‘]’ или ‘)‘
‘. ’ expected Требуется ‘.’
‘..’ expected Требуется ‘..’
Too many variables Слишком много переменных
Invalid FOR control variable Недопустимый параметр цикла For – должен быть только порядкового типа
Integer variable expected Требуется переменная целого типа
Files are not allowed here Здесь не допускаются файлы
String length mismatch Несоответствие длины. Длина строковой константы не соответствует количеству элементов символьного массива
String constant expected Требуется константа строкового типа
Integer or real variable expected Требуется переменная целого или вещественного типа
Ordinal variable expected Требуется переменная порядкового типа
Character expression expected Предшествующее выражение должно иметь символьный тип
Overflow in arithmetic operation Переполнение при выполнении арифметической операции – результат операции вышел за диапазон LongInt
No enclosing FOR, WHILE or REPEAT statement Процедуры Break и Continue не могут использоваться вне операторов циклов
CASE constant out of range Метки оператора Case выходят за диапазон -32768…32767
Too many symbols Слишком много идентификаторов – программа описывает более 64 К идентификаторов
Statement part too large Слишком большой раздел операторов – более 24 К
Cannot evaluate this expression Невозможно вычислить данное выражение
Structured variable are not allowed here Не допускается использование структурной переменной
Invalid floating-point operation Недопустимая операция с плавающей точкой – получено переполнение или деление на ноль
Too many nested scopes Слишком большая вложенность
File access denied Файл недоступен. Файл не может быть открыт или создан
Object type expected Требуется объектный тип

 

Ошибки времени выполнения

а) Ошибки системы MS-DOS

Номер ошибки Сообщение Значение
File not found Файл не найден
Path not found Путь к файлу не найден
Too many open files Слишком много открытых файлов
File access denied Нет доступа УК файлу
Invalid driver number Некорректный номер дискового устройства
No more files Нет файлов

 

б)Ошибки ввода-вывода

При включенной директиве {$I-} номер ошибки ввода-вывода возвращается функцией IOResult

Номер ошибки Сообщение Значение
Disk read error Ошибка чтения диска
Disk write error Ошибка записи на диск
File not assigned Файл не назначен. Файловой переменной не поставлено в соответствие имя файла
File not open Файл не открыт
File not open for input Файл не открыт для ввода
File not open for output Файл не открыт для вывода
Invalid numeric format Неверный числовой формат – вместо чисел вводятся данные других типов

 

в)Критические ошибки

Номер ошибки Сообщение Значение
Disk is write protected Диск защищен от записи
Unknown unit Неизвестный модуль
Disk not ready Дисковое устройство не готово к работе
Unknown command Неопознанная команда
Device write fault Ошибка при записи на устройство
Device read fault Ошибка при чтении с устройства
Hardware failure Сбой в оборудовании

 

г)Фатальные ошибки

Номер ошибки Сообщение Значение
Division by zero Деление на ноль
Range check error Выход за пределы допустимых значений
Stack overflow error Переполнение стека
Invalid pointer operation Некорректная операция ссылки
Floating point overflow Переполнение при выполнении операции с плавающей запятой
Floating point underflow Исчезновение порядка при выполнении операции с плавающей запятой
Invalid floating point operation Недопустимая операция с плавающей запятой
Object not initialized Объект не инициализирован
Arithmetic overflow Арифметическое переполнение

 

 

⇐ Предыдущая78910111213141516

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого. ..

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)…

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим…

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ — конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой…



Преобразование с решенными примерами и часто задаваемыми вопросами

Шестнадцатеричная система счисления с основанием 16. В результате в этой системе используются цифры 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 и 15. Шестнадцатеричная система счисления является одним из типов техники представления чисел. Это также иногда произносится как «гекс». В 1859 году Нистром предложил шестнадцатеричную (с основанием 16) систему обозначений, арифметику и метрологию, названную тональной системой.

В этой статье мы изучим, что такое шестнадцатеричная система счисления, кто ее отец, сколько цифр в ней используется, таблица преобразования, шестнадцатеричное в двоичное, восьмеричное и десятичное преобразование, решенные примеры, использование и преимущества шестнадцатеричной системы счисления и часто задаваемых вопросов.

Тем временем читайте о преобразовании десятичных чисел в двоичные здесь.

Шестнадцатеричная система счисления

В «шестнадцатеричной» или «шестнадцатеричной» системе счисления используется система с основанием 16, и она является распространенным выбором для кодирования больших двоичных значений из-за ее компактного формата и простоты понимания по сравнению с длинными двоичными строками из 1 и 0 с. Шестнадцатеричная нумерация использует 16 (шестнадцать) отдельных цифр, используя сочетание чисел от 0 до 15, потому что это система с основанием 16. Другими словами, на выбор предлагается 16 различных числовых символов.

База шестнадцатеричной системы счисления

Шестнадцатеричная система счисления — это название системы счисления с основанием 16. В результате в этой системе используются цифры 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 и 15. Это означает, что двузначные десятичные числа 10, 11, 12, 13, 14 и 15 должны быть представлены одной цифрой, чтобы существовать в этой системе счисления.

Представление шестнадцатеричного числа

Шестнадцатеричная система счисления представляет собой разновидность числового представления, в котором базовое число равно 16. Это означает, что существует только 16 возможных значений цифр: 0, 1, 2, 3, 4, 5, 6 , 7, 8, 9, A, B, C, D, E, F. Где A, B, C, D, E и F представляют десятичные значения 10, 11, 12, 13, 14 и 15 в отдельных битах. Значение любой цифры может быть представлено всего четырьмя битами. Для представления значения любой цифры требуется всего 4 бита. Шестнадцатеричные числа обозначаются добавлением либо префикса 0x, либо суффикса h.

Позиция каждой цифры имеет вес в 16-й степени. Каждое место в шестнадцатеричной системе в 16 раз значительнее предыдущего, поэтому числовое значение шестнадцатеричного числа вычисляется путем умножения каждой цифры на значение позиции, в которой стоит цифра, с последующим сложением произведений. В результате это взвешенная (или позиционная) система счисления.

Каждое шестнадцатеричное число может быть представлено только 4 битами, причем каждая группа битов имеет отличное значение от 0000 (для 0) до 1111 (для F = 15 = 8+4+2+1).

Таблица шестнадцатеричной системы счисления

Эквивалент двоичного числа шестнадцатеричного числа приведен ниже.

HEX Digit Двоирный HEX Digit БАЙНАЛЬНЫЙ
1
1 0035 0 8 1000
0 1 9 1001
2 10 A = 10 1010
3 11 B = 11 1011
4 100 C = 12 1100
5 101 D = 13 1101
6 110 E = 14 1110
7 111 F = 15 1111

Digit , шестнадцатеричный использует 16 символов, где символы «0»–»9″ (или альтернативно «a»–«f») представляют значения от 0 до 9, а «A»–«F» (или альтернативно «a»–» f”), представляющие значения от 10 до 15.

Преобразование шестнадцатеричной системы счисления

Четыре распространенных типа систем счисления:

  • Десятичная система счисления: Основание 10.
  • Двоичная система счисления: Основание 2.
  • Восьмеричная система счисления: Основание 8.
  • Шестнадцатеричная система счисления: Основание 16

На экзаменах часто требуется преобразовать одну форму системы в другую форму. Давайте посмотрим, как мы можем преобразовать шестнадцатеричную систему счисления в двоичную, шестнадцатеричную и восьмеричную.

Преобразование шестнадцатеричной системы в двоичную 9{n-1}\), начиная с цифры на n-м месте. После того, как вы умножили термины, сложите их вместе. Десятичное число, эквивалентное указанному шестнадцатеричному числу, является результатом. Теперь это десятичное число необходимо преобразовать в двоичное. Разделите десятичное число на 2. Обратите внимание на напоминание. Повторяйте предыдущие две процедуры для частного, пока оно не станет равным нулю.

Обратный порядок остатков. Результатом является требуемое двоичное число.

Решенный пример

Преобразование шестнадцатеричной системы счисления в десятичную

При преобразовании шестнадцатеричной системы счисления в десятичную учитываются основные числа каждой из систем счисления. Шестнадцатеричная система счисления использует как цифры, так и символы, причем символы используются для представления двузначных цифр. Всего имеется 16 обозначений: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 и 10-15 представлены A, B, C, D, E и F соответственно. Десять обозначений представлены как 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9.{п-1}\). После того, как вы умножили термины, сложите их вместе. Сопоставимая десятичная форма является результирующей. 8 делится на десятичное число. Скиньте остальную информацию. С частным повторяйте два предыдущих шага, пока частное не станет равным нулю. Обратный порядок остатков. Полученное число соответствует желаемому результату.

Пример решения

Использование шестнадцатеричной системы счисления

Использование и применение шестнадцатеричной системы счисления:

  • В компьютерном программировании и микропроцессорах широко используется шестнадцатеричная система счисления. Описания цветов на веб-страницах также выполняются с использованием шестнадцатеричного числа. Каждый из трех основных цветов (красный, зеленый и синий) представлен двумя шестнадцатеричными цифрами, что дает 255 возможных значений и в общей сложности более 16 миллионов цветов. Каждый байт описывается в памяти с использованием шестнадцатеричной системы счисления.
  • Программисты часто используют шестнадцатеричную схему счисления для упрощения двоичной системы счисления. Между числами 2 и 16 существует линейная зависимость, поскольку 16 равно 24. Это соответствует четырем двоичным цифрам для каждой шестнадцатеричной цифры. Чтобы сократить двоичный код и упростить его понимание, компьютеры используют двоичные системы счисления, тогда как люди используют шестнадцатеричные системы счисления.
  • Адреса управления доступом к среде (MAC) также представлены шестнадцатеричными числами. MAC-адреса представляют собой шестнадцатеричные числа с 12 цифрами. ММ:ММ:ММ:СС:СС:СС или ММММ-ММСС-СССС являются используемыми форматами. Первые шесть цифр MAC-адреса — это идентификатор производителя адаптера, а последние шесть цифр — серийный номер адаптера.
  • Сообщения об ошибках также отображаются с использованием шестнадцатеричных чисел. Шестнадцатеричный код используется для указания адреса памяти ошибки. Это помогает программистам находить и исправлять ошибки.

Узнайте о свойствах рациональных чисел здесь.

Преимущества шестнадцатеричной системы счисления

Преимущества шестнадцатеричной системы счисления заключаются в следующем:

  • Преимущество шестнадцатеричных чисел заключается в том, что для хранения большего количества чисел требуется меньше памяти; например, 256 чисел могут храниться в виде двух цифр, но десятичные числа могут хранить только 100 чисел в виде двух цифр.
  • Адреса памяти компьютера также представлены в этой системе счисления. Преобразование из шестнадцатеричной системы в двоичную и наоборот очень просто, поскольку для представления каждой цифры в двоичной системе требуется всего четыре бита.
  • Ввод и вывод легче управлять в шестнадцатеричном формате. В области науки о данных, искусственного интеллекта и машинного обучения есть множество преимуществ.
  • Он облегчает жизнь, позволяя группировать двоичные числа, что облегчает их чтение, запись и понимание. Это более удобно для человека, так как люди привыкли группировать числа и объекты вместе для простоты понимания. Кроме того, запись меньшим количеством цифр снижает вероятность ошибки.

Недостатки шестнадцатеричной системы счисления

Недостатки шестнадцатеричной системы счисления заключаются в следующем:

Она облегчает жизнь, позволяя группировать двоичные числа, что облегчает их чтение, запись и понимание. Это более удобно для человека, так как люди привыкли группировать числа и объекты вместе для простоты понимания. Кроме того, запись меньшим количеством цифр снижает вероятность ошибки.

Также читайте об отношениях и функциях здесь. 90[/latex] 1 13

Шаг 2: Сложите разрядность каждой цифры.

4096×1 + 256×10 + 16×7 + 1×13

4096 + 2560 + 112 + 13 = 6781

Итак, 1a7d в шестнадцатеричном формате равно 6781.

_{16}\) = \((6781)_{10}\)

Пример : Вычислить: \((BA 3)_{16}\) + \((5 D E)_{16} \)

Решение:

Шестнадцатеричное сложение:

Таблица для шестнадцатеричного сложения выглядит следующим образом:

Сложение шестнадцатеричных чисел можно легко осуществить с помощью приведенной выше таблицы.

Заметим из таблицы, что

3 + E = 11 (11 перенос)

A + D = 17 (B A 3)

17 + 1 (перенос) = 18 (5 D E)

B + 5 = 10

10 + 1 (перенос) = 11 (1 1 8 1)

Следовательно, требуемая сумма равна 1181 в шестнадцатеричном формате.

Решенный пример : Преобразование \(100100010101111_{2}\) в шестнадцатеричное число.

Чтобы преобразовать двоичное число в шестнадцатеричное, просто разделите его на группы из четырех цифр (начиная справа и добавив ведущие нули, если цифры заканчиваются), а затем интерпретируйте эти группы из четырех цифр как шестнадцатеричные значения, указанные выше. . Установив это, мы имеем

\(100100010101111_{2}=0100 1000 1010 1111\)

\(0100=4, 1000=8, 1010=A, 1111=F\)

\(1001000010101}181010111810101} )

Чтобы преобразовать двоичное число в восьмеричное, мы можем просто разбить его на группы по три цифры, а затем выполнить те же действия, что и при преобразовании двоичного числа в шестнадцатеричное. Возьмем то же двоичное число и преобразуем его в восьмеричное:

\(100100010101111_{2}=100 100 010 101 111\)

100=4

010=2

101=5

111=7

\(100100010101111_{2}=44257_{8}\)

Обратный процесс еще проще. Допустим, мы хотим преобразовать \(FC7_{16}\) в двоичный формат. Мы можем прочитать двоичные значения для каждой цифры шестнадцатеричного целого числа из таблицы:

\(F_{16} = 1111_{2}$ $C_{16} = 1100_{2}$ $7_{16} = 0111_{2 }\)

\(FC7_{16}=111111000111_{2}\)

Процесс преобразования восьмеричного числа в двоичную форму точно такой же.

Надеюсь, что эта статья о шестнадцатеричной системе счисления была информативной. Попрактикуйтесь в том же в нашем бесплатном приложении Testbook. Скачать сейчас!

Часто задаваемые вопросы о шестнадцатеричной системе счисления

В.1 Сколько цифр используется в шестнадцатеричной системе счисления?

Ответ 1 Шестнадцатеричная система счисления представляет собой вид числового представления, в котором основанием числа является 16. Это указывает на то, что существует только 16 возможных значений цифр: 0, 1, 2, 3, 4, 5 , 6, 7, 8, 9, A, B, C, D, E, F. Где A, B, C, D, E и F представляют десятичные значения 10, 11, 12, 13, 14 и 15 в отдельных битах. Значение любой цифры может быть представлено всего четырьмя битами. Для представления значения любой цифры требуется всего 4 бита. Каждая позиция цифры имеет вес в 16-й степени. Каждое место в шестнадцатеричной системе в 16 раз значительнее предыдущего, поэтому числовое значение шестнадцатеричного числа вычисляется путем умножения каждой цифры на значение позиции, в которой стоит цифра, с последующим сложением произведений. В результате это взвешенная (или позиционная) система счисления.

Q.2 Что такое шестнадцатеричная система счисления на примере?

Ответ 2 Шестнадцатеричная система представлена ​​с основанием 16. Это означает, что в шестнадцатеричной системе 16 шестнадцатеричных чисел. Шестнадцатеричная (иногда известная как основание 16 или просто шестнадцатеричная) система счисления представляет собой позиционную систему счисления, используемую в математике и вычислительной технике. Шестнадцатеричное используется в кодировке передачи Base 16, которая делит каждый байт открытого текста на два 4-битных значения и две шестнадцатеричные цифры. Шестнадцатеричные числа обычно используются разработчиками программного обеспечения и проектировщиками систем, поскольку они обеспечивают удобное для человека представление данных в двоичном коде. Каждая шестнадцатеричная цифра, обычно известная как полубайт, представляет собой четыре бита (двоичные цифры) (или полубайт).

Q.3 Какие существуют 4 типа системы счисления?

Ответ 3 Четыре распространенных типа систем счисления: Десятичная система счисления: имеет основание 10. Десятичная система счисления также известна как система счисления с основанием 10, поскольку в ней используются десять цифр от 0 до 9. Десятичная система счисления — это та, которую мы часто используем в нашей повседневной жизни. Двоичная система счисления: имеет основание 2. Двоичная система счисления или система с основанием 2 составляют только две цифры, равные 0 и 1. Компьютеры манипулируют и хранят все свои данные, включая числа, слова, фильмы, изображения и музыку, используя двоичная система счисления. Восьмеричная система счисления: имеет основание 8. Восьмеричная система счисления представлена ​​​​с основанием 8, то есть она использует цифры от 0 до 7, то есть 0, 1, 2, 3, 4, 5, 6 и 7 для представления числа. Термин восьмеричный используется для описания чисел с восьмизначным основанием. Шестнадцатеричная система счисления: имеет основание 16. Шестнадцатеричная система представлена ​​с основанием 16. Это означает, что в шестнадцатеричной системе 16 шестнадцатеричных чисел. Шестнадцатеричная (иногда известная как основание 16 или просто шестнадцатеричная) система счисления представляет собой позиционную систему счисления, используемую в математике и вычислительной технике.

В.4 Что такое двоичные числа?

Ответ 4 Двоичная система счисления или система с основанием 2 состоит только из двух цифр, равных 0 и 1. Компьютеры обрабатывают и хранят все свои данные, включая числа, слова, фильмы, изображения и музыку, используя двоичную систему счисления. Поскольку числа «2» в этой системе не существует, 1 + 1 = 10. Джордж Буль, британский математик, в 1854 году написал основополагающую работу, описывающую алгебраическую систему логики, основанную на бинарной системе, которая стала известна как булева алгебра. Его логическое исчисление сыграет ключевую роль в развитии цифровых электрических схем.

В.5 Что такое десятичные числа?

Ответ 5 Десятичная система счисления также известна как система счисления с основанием 10, поскольку в ней используются десять цифр от 0 до 9. Десятичная система счисления — это та система, которую мы часто используем в нашей повседневной жизни. жизнь. В десятичной системе счисления прогрессивная позиция находится слева от десятичной точки, представленной единицами, десятками, сотнями, тысячами и так далее. Каждая позиция описывает определенную мощность основания (10). Например, десятичное число 1245 состоит из цифры 5 в позиции единиц, 4 в позиции десятков, 2 в позиции сотен и 1 в позиции тысяч.

В.6 Что такое шестнадцатеричные числа?

Ответ 6 Шестнадцатеричная система представлена ​​с основанием 16. Это означает, что в шестнадцатеричной системе 16 шестнадцатеричных чисел. Шестнадцатеричная (иногда известная как основание 16 или просто шестнадцатеричная) система счисления представляет собой позиционную систему счисления, используемую в математике и вычислительной технике. Шестнадцатеричное используется в кодировке передачи Base16, которая делит каждый байт открытого текста на два 4-битных значения и две шестнадцатеричные цифры. Шестнадцатеричные числа обычно используются разработчиками программного обеспечения и проектировщиками систем, поскольку они обеспечивают удобное для человека представление данных в двоичном коде. Каждая шестнадцатеричная цифра, обычно известная как полубайт, представляет собой четыре бита (двоичные цифры) (или полубайт).

Скачать публикацию в формате PDF

Подробнее от Testbook.

com
Свойства целых чисел: закрытие обучения, коммутативный, ассоциативный, распределительный, решаем Формула себестоимости: изучите C.P. Формула прибыли и убытка с примерами
Свойства натуральных чисел, объясненные с решенными примерами
Длинное деление, исследование с использованием символа, шагов, полиномиального деления и решенных примеров

Основания счисления: введение и двоичные числа bases на самом деле довольно прост, но поначалу мысли, лежащие в его основе, могут показаться немного запутанными. И хотя тема различных систем счисления может показаться вам несколько бессмысленной, появление компьютеров и компьютерной графики увеличило потребность в знании того, как работать с различными (недесятичными) системами счисления, особенно с двоичными системами (единицы и нули) и шестнадцатеричные системы (числа от нуля до девяти, за которыми следуют буквы от A до F).

Содержание продолжается ниже

MathHelp.

com

В нашей обычной десятичной системе у нас есть цифры для чисел от нуля до девяти. У нас нет однозначного числа «десять». (Римляне так и сделали, в их иероглифе «X».) Да, мы пишем «10», но это означает «1 десяток и 0 единиц». Это две цифры; у нас нет ни одной одиночной цифры, обозначающей «десять».

Вместо этого, когда нам нужно сосчитать на единицу больше девяти, мы обнуляем столбец единиц и добавляем единицу к столбцу десятков. Когда мы становимся слишком большими в столбце десятков — когда нам нужно на единицу больше, чем девять десятков и девять единиц («99″), мы обнуляем столбцы десятков и единиц и прибавляем единицу к столбцу десяти умножить на десять, или сотням. Следующий столбец — это столбец десять умножить на десять, или тысяч. и так далее, причем каждый больший столбец в десять раз больше предыдущего. Мы помещаем цифры в каждый столбец, говоря нам, сколько копий этой степени десяти нам нужно. другие системы счисления не связаны с тем, что вы занимаетесь счислением с основанием десять с детства. И (почти) каждая цивилизация использовала математику с основанием десять, вероятно, по той простой причине, что у нас десять пальцев. Если бы вместо этого мы жили в мультипликационный мир, где у нас было бы только четыре пальца на каждой руке (считайте их в следующий раз, когда вы смотрите телевизор или читаете комиксы), тогда «естественной» базовой системой, вероятно, была бы восьмеричная система счисления.

Двоичный

Давайте посмотрим на числа с основанием два или двоичные. Как бы вы написали, например, 12 10 («двенадцать, основание десять») в виде двоичного числа? Вам нужно будет преобразовать в столбцы с основанием два, аналог столбцов с основанием десять. В базе десять у вас есть столбцы или «места» для 10 0 = 1, 10 1 = 10, 10 2 = 100, 10 3 = 1000 и так далее. Точно так же в базе два у вас есть столбцы или «места» для 2 0 = 1, 2 1 = 2, 2 2 = 4, 2 3 = 8, 2 4 = 16 и так далее.

Первый столбец в математике с основанием два — это столбец единиц. Но только «0» или «1» могут быть в столбце единиц. Когда вы дойдете до «два», вы обнаружите, что нет ни одной одиночной цифры, обозначающей «два» в математике с основанием два. Вместо этого вы помещаете «1» в столбец «двойки» и «0» в столбец «единицы», указывая на «1 два и 0 единиц». Базовая десятка «два» (2 10 ) записывается в двоичном виде как 10 2 .

«Три» по основанию два на самом деле «1 два и 1 один», поэтому оно записывается как 11 2 . «Четыре» на самом деле дважды два, поэтому мы обнуляем столбец двоек и столбец единиц и ставим «1» в столбец четверок; 4 10 записывается в двоичной форме как 100 2 . Вот список первых нескольких чисел:

Преобразование между двоичными и десятичными числами довольно просто, если вы помните, что каждая цифра в двоичном числе представляет собой степень двойки.

Я перечислю цифры по порядку, как они появляются в номере, который мне дали. Затем в другом ряду я буду считать эти цифры СПРАВА, начиная с нуля:

Первая строка выше (обозначенная как «цифры») содержит цифры двоичного числа; вторая строка (обозначенная как «нумерация») содержит степень числа 2 (основание), соответствующую каждой цифре. Я буду использовать этот список для преобразования каждой цифры в степень двойки, которую она представляет:

1×2 8 + 0×2 7 + 1×2 6 + 1×2 5 + 0× 2 4 + 0×2 3 + 1×2 2 + 0×2 1 + 1×2 0

= 1×256 + 0×128 + 1×364 + 1×364 + 0×16 + 0×8 + 1×4 + 0×2 + 1×1

= 256 + 64 + 32 + 4 + 1

= 357

Тогда 101100101 2 преобразуется в 357 10 .


Преобразование десятичных чисел в двоичные почти так же просто: просто разделите на 2.

Чтобы выполнить это преобразование, мне нужно несколько раз делить на 2, отслеживая остатки по ходу дела. Смотрите ниже:

Приведенный выше рисунок анимирован на «живой» веб-странице.

Как видите, после многократного деления на 2 я получил следующие остатки:

Эти остатки говорят мне, что такое двоичное число. Я читал числа снаружи деления, начиная сверху с конечного значения и его остатка, и двигался по правой стороне последовательного деления вниз. Затем:

357 10 преобразуется в 101100101 2 .



Этот метод преобразования подходит для преобразования в любую недесятичную систему счисления. Только не забудьте включить эту первую цифру вверху, перед списком остатков. Если вам интересно, объяснение того, почему этот метод работает, доступно здесь.

Вы можете преобразовать десятичную систему счисления в любую другую. Когда вы будете изучать эту тему в классе, вы, вероятно, будете преобразовывать числа в различные другие системы счисления, поэтому давайте рассмотрим еще несколько примеров…


URL: https://www.purplemath.com/modules/numbbase .htm

Страница 2 Страница 3

ДЕСЯТИЧНАЯ функция

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel для Mac 2011 Больше. ..Меньше

В этой статье описаны синтаксис формулы и использование DECIMAL . функция в Microsoft Excel.

Описание

Преобразует текстовое представление числа в заданной системе счисления в десятичное число.

Синтаксис

ДЕСЯТИЧНОЕ(текст, основание)

Синтаксис функции DECIMAL имеет следующие аргументы.

Замечания

  • Длина строки Text должна быть меньше или равна 255 символам.

  • Аргумент «Текст» может быть любой комбинацией буквенно-цифровых символов, допустимой для системы счисления, без учета регистра.

  • 53, может привести к потере точности.

  • Основание должно быть больше или равно 2 (двоичное или по основанию 2) и меньше или равно 36 (по основанию 36).
    В системе счисления больше 10 используйте числовые значения 0–9 и буквы A–Z по мере необходимости. Например, основание 16 (шестнадцатеричное) использует 0-9 и A-F, а основание 36 использует 0-9 и A-Z.

  • Если какой-либо из аргументов выходит за пределы ограничений, функция DECIMAL может вернуть ошибку #NUM! или #ЗНАЧ! значение ошибки.

Пример

Скопируйте данные примера из следующей таблицы и вставьте их в ячейку A1 нового рабочего листа Excel. Чтобы формулы отображали результаты, выберите их, нажмите F2, а затем нажмите клавишу ВВОД. При необходимости вы можете настроить ширину столбцов, чтобы увидеть все данные.

Формула

Описание

Результат

Как это работает

‘= ДЕСЯТИЧНОЕ («FF», 16)

Преобразует шестнадцатеричное (с основанием 16) значение FF в его эквивалентное десятичное (с основанием 10) значение (255).

= ДЕСЯТИЧНОЕ («FF», 16)

«F» находится в позиции 15 в системе счисления с основанием 16. Поскольку все системы счисления начинаются с 0, 16-й символ в шестнадцатеричном формате будет на 15-й позиции. В приведенной ниже формуле показано, как оно преобразуется в десятичную форму:

.

Функция HEX2DEC в ячейке C3 проверяет этот результат.

=HEX2DEC(«ff») 90))

‘= ДЕСЯТИЧНОЕ (111,2)

Преобразует двоичное (с основанием 2) значение 111 в его эквивалентное десятичное (с основанием 10) значение (7).

= ДЕСЯТИЧНОЕ (111,2)

«1» находится в позиции 1 в системе счисления с основанием 2. В приведенной ниже формуле показано, как оно преобразуется в десятичную форму:

.

Функция BIN2DEC в ячейке C6 проверяет этот результат.

=БИН2ДЕК(111)

90))

‘= ДЕСЯТИЧНОЕ («зап», 36)

Преобразует значение «zap» по основанию 36 в его эквивалентное десятичное значение (45745).

= ДЕСЯТИЧНОЕ («зап», 36)

«z» находится в позиции 35, «a» — в позиции 10, а «p» — в позиции 25. В приведенной ниже формуле показано, как оно преобразуется в десятичное число.

alexxlab

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *