Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по ГОСТу.doc
Скачиваний:
19
Добавлен:
14.11.2019
Размер:
10.65 Mб
Скачать

1. Арифметические основы построения эвм

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

Непозиционные системы счисления

В ней количественный эквивалент каждой цифры, входящей в запись данного числа, не зависит от места (позиции) этой цифры в ряду других цифр. Пример: римская система счисления. В ней для записи различных целых чисел используются символы I, V, X, L, C, D, M и т.д., обозначающие соответственно 1, 5, 10, 50, 100, 500, 1000 и т.д. Например, запись MCMLXXXV означает число 1985. Общим недостатком непозиционных систем является сложность представления в них достаточно больших чисел, так как при этом получается чрезвычайно громоздкая запись чисел или требуется очень большой алфавит используемых цифр. В ЭВМ применяют только позиционные системы счисления, в которых количественный эквивалент каждой цифры алфавита зависит не только от вида этой цифры, но и от ее местоположения в записи числа.

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

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

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

Десятичная система счисления.

Пришла в Европу из Индии, где она появилась не позднее VI века н.э. В этой системе 10 цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, но информацию несет не только цифра, но и место, на котором цифра стоит (то есть ее позиция). В десятичной системе счисления особую роль играют число 10 и его степени: 10, 100, 1000 и т.д. Самая правая цифра числа показывает число единиц, вторая справа - число десятков, следующая - число сотен и т.д. Позиции цифр в записи числа называют его разрядами. В десятичной системе счисления вес каждого разряда в 10 раз больше веса предыдущего. Всякое число в десятичной системе счисления можно представить в виде суммы различных целых степеней десяти с соответствующими коэффициентами (0-9), взятыми из алфавита данной системы счисления. Например: 245,83=2*102+4*101+5*100+8*10-1+3*10-2. Любое десятичное позиционное число N можно представить с помощью целых степеней десяти, взятых с соответствующими коэффициентами, т.е. N10=am*10m+am-1*10m-1+…+a1*10+a0*100+a-1*10-1+…+a-n*10-n.

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

В этой системе всего две цифры - 0 и 1. Особую роль здесь играет число 2 и его степени: 2, 4, 8 и т.д. Самая правая цифра числа показывает число единиц, следующая цифра - число двоек, следующая - число четверок и т.д. Двоичная система счисления позволяет закодировать любое натуральное число - представить его в виде последовательности нулей и единиц. В двоичном виде можно представлять не только числа, но и любую другую информацию: тексты, картинки, фильмы и аудиозаписи. Инженеров двоичное кодирование привлекает тем, что легко реализуется технически. Наиболее простыми с точки зрения технической реализации являются двухпозиционные элементы, например, электромагнитное реле, транзисторный ключ.

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

В этой системе счисления 8 цифр: 0, 1, 2, 3, 4, 5, 6, 7. Цифра 1, указанная в самом младшем разряде, означает - как и в десятичном числе - просто единицу. Та же цифра 1 в следующем разряде означает 8, в следующем 64 и т.д. Число 100 (восьмеричное) есть не что иное, как 64 (десятичное). Чтобы перевести в двоичную систему, например, число 611 (восьмеричное), надо заменить каждую цифру эквивалентной ей двоичной триадой (тройкой цифр). Легко догадаться, что для перевода многозначного двоичного числа в восьмиричную систему нужно разбить его на триады справа налево и заменить каждую триаду соответствующей восьмеричной цифрой.

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

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

Правила перевода из системы счисления в систему счисления

  1. Для перевода чисел из любой системы счисления в десятичную необходимо:

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

  2. Результат опять умножить на основание старой системы счисления и прибавить следующую цифру исходного числа.

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

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

  2. Для перевода чисел из любой системы счисления в любую необходимо исходное число перевести в десятичную систему по первому правилу (умножением), полученное десятичное число перевести в искомую систему по второму правилу (деление).

Таблица 1.1

Представление чисел в различных системах счисления

Системы счислений

Десятичная

Двоичная

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

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

0

0

0

0

1

1

1

1

2

10

2

2

3

11

3

3

4

100

4

4

5

101

5

5

6

110

6

6

7

111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

А

11

1011

13

В

12

1100

14

С

13

1101

15

D

14

1110

16

E

15

1111

17

F

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

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

          2. из 8-ричной в 2-ичную: Каждую цифру 8-ричного числа необходимо заменить 3-х разрядным двоичным значением.

Варианты представления информации в ПК

Вся информация (данные) представлена в виде двоичных кодов. Для удобства работы введены следующие термины, обозначающие совокупности двоичных разрядов (табл. 1. 2). Эти термины обычно используются в качестве единиц измерения объемов информации, хранимой или обрабатываемой в ЭВМ.

Таблица 1.2. Двоичные совокупности

Количество двоичных разрядов в группе

1

8

16

8*1024

8*10242

8*10243

8*10244

Наименование единицы измерения

Бит

Байт

Параграф

Килобайт

(Кбайт)

Мегабайт

(Мбайт)

Гигабайт

(Гбайт)

Терабайт

(Тбайт)

Последовательность нескольких битов или байтов часто называют полем данных. Биты в числе (в слове, в поле и т.п.) нумеруются справа налево, начиная с 0-го разряда (рис.1.1)

Рис. 1.1. Двоичная система счисления

Примечание: БИТ (англ. bit, от binary двоичный и digit знак), двоичная единица, в теории информации единица количества информации (минимальная единица). БАЙТ (англ. byte), единица измерения количества информации при ее хранении, передаче и обработке на ЭВМ. Состоит из 8 бит (двоичных единиц). Информация, содержащаяся в одном байте обычно достаточна для представления одной буквы алфавита или 2 десятичный цифр.

В ПК могут обрабатываться поля постоянной и переменной длины.

Поля постоянной длины:

слово - 2 байта

двойное слово - 4 байта

полуслово - 1 байт

расширенное слово - 8 байт

слово длиной 10 байт- 10 байт

Числа с фиксированной запятой чаще всего имеют формат слова и полуслова, числа с плавающей запятой - формат двойного и расширенного слова.

Поля переменной длины могут иметь любой размер от 0 до 256 байт, но обязательно равный целому числу байтов.

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

  • для ее реализации нужны технические устройства с двумя устойчивыми состояниями (есть ток — нет тока, намагничен — не намагничен и т.п.), а не, например, с десятью, — как в десятичной;

  • представление информации посредством только двух состояний надежно и помехоустойчиво;

  • возможно применение аппарата булевой алгебры для выполнения логических преобразований информации;

  • двоичная арифметика намного проще десятичной.

Недостаток двоичной системы — быстрый рост числа разрядов, необходимых для записи чисел.

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

Перевод десятичной системы в двоичную, восьмеричную и шестнадцатеричную.

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

108

Ответ:4610=568 Ответ: 7510=1138 Ответ: 45010=7028 Ответ:12510=175­8

102

Ответ: 37710=101 111 0012 Ответ:7510=1 001 0112

1016

Ответ:7510=4B16 Ответ: 17310=AD16 Ответ: 35710=16516 Ответ:75410=2F216

Перевод восьмеричной системы в двоичную, десятичную и шестнадцатеричную.

82

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

810

568 = (5·81)+(6·80) = 40 + 6 = 4610

3468 = (3·82)+(4·81)+(6·80)= 3·64 + 4·8 + 6·1 = 23010

23578 = (2·83)+(3·82)+(5·81)+(7·80) = 2·512 + 3·64 + 5·8 + 7·1 = 126310

816

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

Перевод двоичной системы в восьмеричную, десятичную, и шестнадцатеричную.

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

28

210

Возведение в степень начинается с младшего разряда.

1011011011102 = (0·20) + (1·21) + (1·22) + (1·23) + (0·24) + (1·25) + (1·26) + (0·27) + +(1·28) + (1·29) + (0·210) + (1·211) = 0+2+4+8+0+32+64+0+256+512+0+2048=292610

10001000112 = (1·20) + (1·21) + (0·22) + (0·23) + (0·24) + (1·25) + (0·26) + (0·27) + +(0·28) + (1·29) = 1+2+0+0+0+32+0+0+0+512=54710

10111112=(1·20) + (1·21) + (1·22) + (1·23) + (1·24) + (0·25) + (1·26) = 1 + 2 + 4 + 8 + 16 + 0 + 64 = 9510

216

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

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

162

168

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

1610

Чтобы перевести шестнадцатеричное число в десятичное нужно: с помощью табл.1 перевести шестнадцатеричные значения в десятичный эквивалент, т.е F – 15, C – 12 и т.д.

1FCF16 = (15·160) + (12·161) + (15·162) + (1·163)=15+192+3840+4096=814310

5B16 = (11·160) + (5·161) = 11+80=9110 FF16 = (15·160) + (15·161) = 15+240=25510

АА16 = (10·160) + (10·161) = 10+160 = 17010

Самостоятельная работа

Вариант 1

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

  2. Перевести число 531 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 1110100 переведите в десятичную систему счисления.

Вариант 2

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

  2. Перевести число 331 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 10101011 переведите в десятичную систему счисления.

Вариант 3

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

  2. Перевести число 313 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 1101000 переведите в десятичную систему счисления.

Вариант 4

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

  2. Перевести число 122 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 11100111 переведите в десятичную систему счисления.

Вариант 5

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

  2. Перевести число 131 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 100001010 переведите в десятичную систему счисления.

Вариант 6

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

  2. Перевести число 364 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 100010001 переведите в десятичную систему счисления.

Вариант 7

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

  2. Перевести число 577 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 10101110 переведите в десятичную систему счисления.

Вариант 8

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

  2. Перевести число 531 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 10110000 переведите в десятичную систему счисления.

Вариант 9

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

  2. Перевести число 750 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 10010111 переведите в десятичную систему счисления.

Вариант 10

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

  2. Перевести число 521 из десятичной системы счисления в восьмеричную систему счисления.

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

  4. Двоичное число 11111010 переведите в десятичную систему счисления.