972
.pdfМинистерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования «Воронежский государственный лесотехнический университет имени Г.Ф. Морозова»
Микропроцессорная техника
Методические указания к выполнению курсовой работы для студентов по направлению подготовки 15.03.04 – Автоматизация технологических
процессов и производств
Воронеж 2016
2
УДК 004.384
Микропроцессорная техника: методические указания к выполнению курсовой работы для студентовпо направлению подготовки 15.03.04 –
Автоматизация технологических процессов и производств для очной формы обучения / А.В. Стариков; М-во образования и науки РФ, ФГБОУ ВО
«ВГЛТУ». – Воронеж, 2016. – 16 с.
Печатается по решению редакционно-издательского совета ВГЛТУ
Рецензент: заведующий кафедрой электротехники и автоматики ФГБОУ ВО «Воронежский государственный аграрный университет имени императора Петра I», доктор технических наук, профессор Афоничев Д.Н.
3
Введение
Учебный план по направлению подготовки бакалавра 15.03.04 – «Автоматизация технологических процессов и производств» включает изучение дисциплины «Микропроцессорная техника» в течение 4-го семестра в объеме 144 часов, из которых 36 часов отводится для лекционных занятий, 36 часов − для лабораторных работ, 54 часа − для самостоятельной работы студентов. Кроме того, учебным планом предусматривается выполнение и защита курсовой работы по данной дисциплине.
Цель выполнения курсовой работы − контроль качественного уровня усвоения студентами тем и вопросов дисциплины «Микропроцессорная техника». Задание на курсовую работу содержит следующие четыре блока (части), относящиеся к различным разделам дисциплины:
1.Арифметические основы микропроцессорной техники.
2.Логические основы микропроцессорной техники.
3.Функциональные узлы и устройства микропроцессорной техники.
4.Архитектура и основы программирования микропроцессоров.
Для выполнения задания, относящегося к блоку «Арифметические основы микропроцессорной техники», необходимо знать:
1)Что такое позиционная система счисления?
2)Какие позиционные системы счисления получили распространение в вычислительной технике и информатике? Почему?
3)Как представляются различные формы чисел (целые и вещественные, положительные и отрицательные) в компьютере?
4)Как осуществляется перевод различных форм представления чисел из одной позиционной системы счисления в другую?
5)Как выполняются арифметические операции над числами в различных позиционных системах счисления?
6)Как кодируется информация для представления в компьютере? Какие системы кодировки наиболее распространены?
Необходимо уметь практически выполнить запись числа в различных позиционных системах счисления, перевод числа из одной позиционной системы счисления в другую, сложение чисел со знаком, кодирование нечисловой информации для представления в компьютере.
Для выполнения задания, относящегося к блоку «Логические основы микропроцессорной техники», необходимо знать:
1)понятия, операции (дизъюнкция, конъюнкция, инверсия), аксиомы и теоремы булевой алгебры (алгебры логики);
2)основные логические элементы (И, ИЛИ, НЕ, И-НЕ, ИЛИ-НЕ), соответствующие им условные графические обозначения, таблицы истинности, временные диаграммы, представления в контактной и схемотехнической формах;
3)правила построения совершенных дизъюнктивных и конъюнктивных нормальных форм (СДНФ и СКНФ), основываясь на данных таблиц истинности;
4
4)правила минимизации выражений функций алгебры логики с использованием основных теорем булевой алгебры, карт Карно;
5)правила построения логических схем по заданной функции алгебры логики, формирования функции логики по заданной логической схеме.
Необходимо уметь практически построить СДНФ и СКНФ для заданной логической функции, выполнить их минимизацию, используя 1) основные теоремы булевой алгебры, 2) карты Карно (диаграммы Вейча). По полученной минимальной нормальной форме (МНФ) построить логическую структурную схему; уметь также выполнить обратную задачу, т.е. по заданной логической схеме − получить логическую функцию в аналитическом виде.
Для выполнения задания, относящегося к блоку «Функциональные узлы и устройства микропроцессорной техники», необходимо знать:
1)отличия комбинационных и последовательностных функциональных узлов и устройств;
2)узлы последовательностного типа, их классификацию и варианты построения с использованием заданного логического базиса (И-НЕ, ИЛИ-НЕ): триггеры, регистры, счётчики;
3)узлы комбинационного типа, их классификацию и варианты построения с использованием заданного логического базиса (И-НЕ, ИЛИ-НЕ): мультиплексоры и демультиплексоры, шифраторы и
дешифраторы, сумматоры, умножители.
Необходимо уметь практически построить узлы последовательностного и комбинационного типов с использованием заданного логического базиса (И- НЕ, ИЛИ-НЕ), а также таблицы состояний для каждого из узлов и устройств.
Для выполнения задания, относящегося к блоку «Архитектура и основы программирования микропроцессоров», необходимо знать:
1) общие понятия и типичную архитектуру микропроцессора; 2) систему команд и режимы (способы) адресации одного из типовых
микропроцессоров; 3) основные возможности и директивы ассемблера;
4) алгоритмизацию и программирование задач обработки информации.
1 Примеры заданий для выполнения курсовой работы по дисциплине «Микропроцессорная техника»
1.1 Арифметические основы микропроцессорной техники
Задание №1. Перевести число, представляющее номер зачётной книжки, в двоичную, восьмеричную и шестнадцатеричную системы счисления. Схема перевода должна быть приведена в пояснительной записке по курсовой работе.
Задание №2. Представить результат (сумму) и схему сложения двух чисел: первое слагаемое − первые две цифры номера зачётной книжки, второе слагаемое − отрицательное число, представленное последними тремя цифрами номера зачётной книжки. Сложение произвести в двоичной системе счисления, учитывая при этом, что отрицательное число должно представляться в дополнительном коде.
5
Задание №3. Используя таблицу кодов КОИ-7, записать свои фамилию и имя, разделённые пробелом, в виде последовательности двоичных и шестнадцатеричных кодов. Дополнить полученную последовательность кодов восьмым контрольным разрядом для контроля на чётность (бит контроля чётности) и записать новые последовательности кодов повышенной надёжности. Пояснить в чём состоит заключается повышение надёжности кодирования в данном случае.
1.2 Логические основы микропроцессорной техники
Задание №4. Записать логическое выражение для функции F(X,Y,Z) согласно заданной таблице истинности (таблица 1). Полученное логическое выражение упростить (минимизировать) с использованием алгебраических
преобразований и с помощью метода карт Карно и составить по нему логическую схему. Вариант значений логической функции при различных значениях аргументов X, Y и Z определяется по последней цифре номера зачётной книжки.
|
|
|
|
Таблица истинности логической функции F(X,Y,Z) |
|
Таблица 1 |
||||||||||
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Значения |
|
|
Значения функции F(X,Y,Z) для различных вариантов |
||||||||||||
|
аргументов |
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
X |
|
Y |
|
Z |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
|
9 |
Пример |
0 |
|
0 |
|
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
|
1 |
1 |
0 |
|
0 |
|
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
|
0 |
1 |
0 |
|
1 |
|
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
|
1 |
0 |
0 |
|
1 |
|
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
|
0 |
0 |
1 |
|
0 |
|
0 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
|
0 |
0 |
1 |
|
0 |
|
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
|
1 |
1 |
1 |
|
1 |
|
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
|
0 |
0 |
1 |
|
1 |
|
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
|
0 |
1 |
Задание №5. Для заданной схемы, составленной из трёх логических эле- ментов Э1, Э2 и Э3 (рисунок 1), записать логическое выражение и составить таблицу истинности. Вариант схемы выбирается на рисунке 1 в соответствии с последней цифрой номера зачётной книжки, вариант типов элементов Э1, Э2 и Э3 выбирается в таблице 2 в соответствии с предпоследней цифрой номера зачётной книжки.
Таблица 2
Элемент |
|
|
|
Тип логического элемента |
|
|
|
|||
в схеме |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
Э1 |
ИЛИ- |
ИЛИ |
И-НЕ |
И |
И |
И- |
ИЛИ |
ИЛИ- |
ИЛИ- |
И |
|
НЕ |
|
|
|
|
НЕ |
|
НЕ |
НЕ |
|
Э2 |
ИЛИ |
И- |
ИЛИ- |
ИЛИ- |
ИЛИ- |
ИЛИ |
ИЛИ- |
И |
ИЛИ |
ИЛИ- |
|
|
НЕ |
НЕ |
НЕ |
НЕ |
|
НЕ |
|
|
НЕ |
Э3 |
И |
ИЛИ |
ИЛИ |
ИЛИ |
И-НЕ |
ИЛИ |
И |
ИЛИ |
И-НЕ |
ИЛИ- |
|
|
|
|
|
|
|
|
|
|
НЕ |
6
0)
2)
4)
6)
8)
X
Y
Z ∙
X
Y |
|
∙ |
Z |
|
|
|
|
X
Y
Z ∙
X
Y ∙
Z
X
Y
Z
|
|
|
|
|
|
|
|
|
|
|
1) |
X |
Э1 |
|
|
|
|
|
|
F |
|
||||
|
|
Э3 |
|
|
Y |
|||||||
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2 |
|
|
|
|
|
|
|
|
|
|
3) |
Z |
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
||
Э1 |
|
|
|
|
|
|
F |
|
||||
|
|
Э3 |
|
|
Y |
|||||||
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5) |
Z |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
||
Э1 |
|
|
|
|
|
|
|
|
F |
|
||
|
|
|
|
Э3 |
|
|
|
Y |
||||
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7) |
Z |
||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
||
Э1 |
|
|
|
|
|
|
|
|
F |
|
||
|
|
|
|
Э3 |
|
|
|
Y |
||||
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2 |
|
|
|
|
|
|
|
|
|
|
9) |
Z |
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
||
Э1 |
|
|
|
|
|
|
|
F |
|
|||
|
|
|
Э3 |
|
|
Y |
||||||
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2 |
∙ |
|
|
|
|
|
|
|
|
|
Z |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э1 |
∙ |
|
F |
||
|
|
Э3 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2
Э1 Э3 F
∙Э2
|
|
|
|
|
|
|
|
|
∙ |
|
|
|
|
|
|
|
|
Э1 |
|
|
|
|
|
F |
||
|
|
|
|
Э3 |
||||
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
∙ |
|
|
|
|
|
|
|
|
Э1 |
|
|
|
|
|
F |
||
|
|
|
|
Э3 |
||||
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2
∙ |
Э1 |
|
|
|
F |
|
|
|
Э3 |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Э2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 1 − Варианты логических схем
7
1.3 Функциональные узлы и устройства микропроцессорной техники
Задание №6. На рисунке 2 представлена логическая схема двоичного трёхразрядного счётчика импульсов. В чём заключается особенность работы данного устройства? Для более полной аргументации ответа привести таблицу переходов и временные диаграммы счётчика.
|
|
|
|
|
|
|
|
|
|
|
|
|
Q1 |
|
|
|
|
|
Q2 |
|
|
Q3 |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
С1 |
TT1 |
|
|
|
С2 |
|
TT2 |
|
|
|
|
С |
TT3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
∙ |
|
|
|
∙ |
3 |
|
∙ |
|||||
Установка ²0² |
|
|
|
R |
|
|
|
|
R |
|
|
|
|
|
|
R |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
∙ |
|
|
∙ |
|
|
|
|
|
|
|
|
|
|
|||||||||||
1 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
& |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 2 − Логическая схема двоичного трёхразрядного счётчика
1.4 Архитектура и основы программирования микропроцессоров
Задание №7. Разработать алгоритм сложения минимального и максимального целочисленных значений, хранящихся в 10-элементном массиве в оперативной памяти компьютера. Начертить структурную схему алгоритма и привести её подробное описание. Реализовать функциональное «ядро» алгоритма (т.е. поиск минимального и максимального значений и их последующее сложение) с использованием языка ассемблера одного из известных микропроцессоров (микроконтроллеров). При реализации в качестве упрощения можно допустить, что и минимальное и максимальное значения представлены в массиве в единственном экземпляре. Ввод значений для элементов массива и вывод (отображение) результата сложения также можно не реализовывать.
2 Методические рекомендации к выполнению заданий курсовой работы
2.1Арифметические основы микропроцессорной техники
Врабочей программе дисциплины «Микропроцессорная техника» данной теме соответствует «Раздел 2. Представление информации в компьютере, кодирование числовых и символьных данных, арифметические операции с двоичными числами». При выполнении заданий рекомендуется использовать записи конспекта лекций, а также информацию из отчёта, подготовленного для защиты лабораторной работы №1 «Двоичное представление информации. Арифметические операции с двоичными числами. Перевод чисел из одной системы счисления в другую».
Рекомендации к выполнению задания №1. Для перевода вещественного десятичного числа в двоичную систему счисления необходимо выполнить по
8
отдельности перевод целой и дробной частей числа. Перевод целой части
выполняется с помощью последовательного деления целой части десятичного числа на 2 с одновременным слежением за получающимися остатками, из
которых формируется целая часть двоичного числа путём записи их в направлении от последнего к первому.
Перевод дробной части десятичного числа выполняется с помощью последовательного умножения дробной части десятичного числа на 2 с одновременным слежением за целыми частями получающихся произведений,
из которых формируется дробная двоичного числа путём записи их в направлении от первой к последней.
Например, десятичное число 37.125 эквивалентно двоичному числу 100101.001, которое получается в результате выполнения следующих операций.
1.Для целой части десятичного числа (37) − целочисленное деление на 2
изапись полученных остатков от деления в направлении от последнего к первому:
37 |
: 2 |
= 18 + 1 (остаток 1) |
|
|
18 |
: 2 |
= 9 + 0 (остаток 0) |
Направление |
|
9 |
: 2 = 4 + 1 (остаток 1) |
|||
4 |
: 2 = 2 + 0 (остаток 0) |
записи остатков |
||
в целой части числа |
||||
2 |
: 2 = 1 + 0 (остаток 0) |
|||
|
||||
1 |
: 2 = 0 + 1 (остаток 1) |
|
Целая часть числа в двоичном виде: 100101 2. Для дробной части десятичного числа (0.125) − умножение на 2 и
запись полученных целых частей произведений в направлении от первой к
последней: |
|
|
|
|
|
0.125 × 2 |
= 0.25 (целая часть произведения 0) |
Направление |
|||
0.25 |
× 2 |
= 0.5 |
(целая часть произведения 0) |
||
записи целых частей |
|||||
0.5 |
× 2 |
= 1.0 |
(целая часть произведения 1) |
||
произведений |
Дробная часть числа в двоичном виде: 0.001 3. Объединение полученных целой и дробной частей двоичного числа:
100101 + 0.001 = 100101.001 4. Проверка полученного результата с помощью обратного перевода − из
двоичной системы счисления в десятичную:
100101.001 = 1×25+0×24+0×23+1×22+0×21+1×20+0×2-1+0×2-2+1×2-3 = = 32 + 4 + 1 + 1/8 = 37 + 0.125 = 37.125
При выполнении задания №1 можно использовать следующую общую
процедуру перевода целого десятичного числа в одну из предложенных систем счисления. Необходимо выполнить последовательное целочисленное деление на число, являющееся основанием системы счисления, в которую осуществляется перевод. Сначала делят само переводимое число, а затем и получающиеся частные от деления до тех пор, пока в качестве частного не будет получен 0. При этом должны фиксироваться остатки от деления, запись которых в направлении от последнего к первому, и даёт представление числа в новой системе счисления.
9
Следует иметь в виду, что целочисленное деление числа на 2 выполняется сравнительно легко, но количество операций деления при этом может оказаться достаточно большим.
Получив двоичное представление числа, легко перейти к восьмеричному и шестнадцатеричному представлениям, выполнив группирование двоичных цифр по три (для восьмеричной системы) или по четыре (для шестнадцатеричной) с последующей заменой каждой тройки или четвёрки
двоичных цифр одной восьмеричной или шестнадцатеричной цифрой соответственно. Группирование двоичных цифр для целой части числа следует начинать справа, для дробной части − слева, дописывая в недостающие позиции незначащие нули. Например, десятичное число 37.125 в различных системах счисления имеет следующий вид:
100101.0012 = 45.18
100101.0012 = 00100101.00102 = 25.216
Проверка полученного результата, заключающаяся в обратном переводе в десятичную систему, подтверждает эквивалентность представлений числа:
45.18 = 4×81 + 5×80 +1×8-1 = 32 + 5 + 1/8 = 37.125 25.216 = 2×161 + 5×160 + 2×16-1 = 32 + 5 +2/16 = 37.125
Наименьшее количество операций деления потребуется при переводе целого десятичного числа в шестнадцатеричную систему (хотя делить многозначные числа на 16 сложнее, чем на 2). Получив шестнадцатеричное представление, следует представить каждую цифру этого представления четвёркой двоичных цифр, т.е. выполнить перевод числа в двоичную систему счисления. Затем, осуществив группирование двоичных цифр по три с заменой каждой группы восьмеричной цифрой, получить восьмеричное представление.
Таким образом, при выполнении задания №1 можно использовать один из следующих вариантов:
∙перевести десятичное число в двоичный вид с помощью целочисленного деления на 2. Затем путём группирования двоичных
цифр получить восьмеричное и шестнадцатеричное представления числа;
∙перевести десятичное число в восьмеричный вид с помощью целочисленного деления на 8. Затем, заменив каждую восьмеричную цифру тройкой двоичных цифр, получить двоичное представление, из которого путём группирования по четыре двоичных цифры (дописывая при необходимости незначащие нули) − получить шестнадцатеричное представление;
∙перевести десятичное число в шестнадцатеричный вид с помощью целочисленного деления на 16. Затем, заменив каждую шестнадцатеричную цифру четвёркой двоичных цифр, получить двоичное представление, из которого путём группирования по три двоичных цифры (дописывая при необходимости незначащие нули) − получить восьмеричное представление.
10
Рекомендации к выполнению задания №2. При сложении чисел с разными знаками необходимо положительное двоичное число представить прямым кодом, отрицательное двоичное число − дополнительным кодом, а затем сложить эти коды. При этом требуемый знак суммы будет формироваться «автоматически». Если в знаковом разряде будет содержаться «двоичный 0», то сумма представляет собой прямой код положительного числа. Если в знаковом разряде суммы будет содержаться «двоичная 1», то сумма представляет собой дополнительный код отрицательного числа.
Предположим, что номером зачётной книжки является число 12345, т.е. необходимо выполнить двоичное сложение двух чисел: 12 и -345. Прямым кодом числа 12 является число 000011002. Дополнительный код числа -345 формируется следующим образом. Сначала получаем прямой код соответствующего положительного числа 345 (например, последовательным делением на 2): 00000001010110012. Затем выполняем инвертирование, т.е. обращение (замену на противоположное значение) двоичных разрядов прямого кода, для получения обратного кода отрицательного числа: 11111110101001102. И, наконец, сложив обратный код с двоичной 1, получаем дополнительный код числа -345: 11111110101001112.
В заключение выполним сложение прямого кода числа 12 и дополнительного кода числа -345:
0000000000001100 +1111111010100111 1111111010110011
Поскольку в знаковом (старшем) разряде результата содержится 1, то полученная сумма является отрицательным числом (-333), представленным в дополнительном коде.
Как и при решении задания №1, рекомендуется выполнить проверку результата, т.е. убедиться, что полученная сумма представляет число -333. Прямой код положительного числа 333 представляет собой 00000001010011012; обратный код числа -333: 11111110101100102; дополнительный код числа -333: 11111110101100112. Сравнивая полученное значение для дополнительного кода числа -333 со значением суммы, приведённым выше, убеждаемся, что они совпадают.
Рекомендации к выполнению задания №3. Существуют различные кодировочные таблицы символов, в которых коды символов представляются комбинациями различного количества бит. Каждый символ в кодировке КОИ-7 представлен восьмиразрядным двоичным числом (фактически, это один байт), в котором младшие 7 бит (двоичных разрядов) предназначены для кода самого символа (таблица 3), а старший бит называется битом (разрядом) контроля чётности и часто используется для контроля ошибок при передаче данных. В этот бит записывают 0 или 1, чтобы сумма единиц, содержащихся в двоичном коде данного символа, было чётным.