- •ВВЕДЕНИЕ
- •1.1. Порядок выполнения работы
- •1.2. Требования и состав отчёта
- •1.3. Подготовка к защите
- •1.4. Варианты заданий
- •2.1. Порядок выполнения работы
- •2.2. Состав отчёта
- •2.3. Подготовка к защите
- •2.4. Варианты заданий
- •ЛАБОРАТОРНАЯ РАБОТА № 3
- •ЯЗЫК ПРОГРАММИРОВАНИЯ PYTHON И ЕГО ИСПОЛЬЗОВАНИЕ ДЛЯ ОБРАБОТКИ ДАННЫХ
- •3.1. Порядок выполнения работы
- •3.2. Состав отчёта
- •3.3. Подготовка к защите
- •3.4. Варианты заданий
- •4.1. Порядок выполнения работы
- •4.2. Состав отчёта
- •4.3. Подготовка к защите
- •4.4. Варианты заданий
- •5.1. Варианты заданий
- •5.2. Порядок выполнения работы
- •5.4. Подготовка к защите
ЛАБОРАТОРНАЯ РАБОТА № 2 ВЫПОЛНЕНИЕ АРИФМЕТИЧЕСКИХОПЕРАЦИЙ НАД ДВОИЧНЫМИ
ЧИСЛАМИ
2.1. Порядок выполнения работы
1. Переписать в отчёт (рукой, а не копированием в электронном виде) формулировку заданий 4–10! Это требуется для того, чтобы корректно и в полном объёме выполнить все необходимые пункты задания. Данную лабораторную надо выполнять как вычислительная машина, которая действует строго по инструкции.
2.Определить свои числа А и С исходя из варианта. Вариант выбирается как сумма последнего числа в номере группы и номера в списке группы согласно ISU.
3.По заданному варианту исходных данных получить набор десятичных чисел:
X1 = A, X2 = C,
X3 = A+C, X4 = A+C+C, X5 = C-A, X6 = 65536-X4,
X7 = -X1, X8 = -X2, X9 = -X3, X10 = -X4, X11 = -X5, X12 = -X6.
Пример:
A = 2187
C = 30327
X1 = 2187
X2 = 30327
X3 = A + C = 2187 + 30327 = 32514X7 = -X1 = -2187
X8 = -X2 = -30327
X9 = -X3 = -32514
4. Выполнить перевод десятичных чисел X1,…,X6 в двоичную систему счисления, получив их двоичные эквиваленты B1,…,B6 соответственно.
Не использовать при этом никакой формат представления данных, не использовать никакую разрядную сетку.
9
Пример:
X1(10) → B1(2) = 1000 1000 1011 X2(10) → B2(2) = 111 0110 0111 0111 X3(10) → B3(2) = 111 1111 0000 0010
5. Используя 16-разрядный двоичный формат со знаком и полученные в предыдущем пункте задания двоичные числа B1,…,B6 (т.е. при необходимости дополнить числа B1…B6 ведущими нулями и однозначно интерпретировать эти числа в 16-разрядном двоичном формате со знаком), вычислить двоичные числа B7,…,B12: B7 = -B1,B8 = -B2, B9 = -B3, B10 = -B4, B11 = -B5, B12 = -B6.
Отрицательные числа представлять в дополнительном коде.
Пример:
B7(2) = - B1(2) = 1111 0111 0111 0101 B8(2) = - B2(2) = 1000 1001 1000 1001 B9(2) = - B3(2) = 1000 0000 1111 1110
6.Найти область допустимых значений для данного двоичного формата.
7.Выполнить обратный перевод всех двоичных чисел B1…B12
(используя 16-разрядный двоичный формат со знаком) в десятичные и прокомментировать полученные результаты.
Пример:
B1(2) →Y1(10) = 2187(10) = X1(10) Результатобратногопереводаиздвоичногочисла
вдесятичноеравенисходномудесятичномучислу B2(2) →Y2(10) = 30327(10) = X2(10) Результатобратногопереводаиздвоичногочисла
вдесятичноеравенисходномудесятичномучислу B3(2) →Y3(10) = 32514(10) = X3(10) Результатобратногопереводаиздвоичногочисла
вдесятичноеравенисходномудесятичномучислу B7(2) →Y7(10) = -2187(10) = X7(10) Результатобратногопереводаиздвоичногочисла
вдесятичноеравенисходномудесятичномучислу B8(2) → Y8(10) = -30327(10) = X8(10) Результат обратного переводаиз двоичного
числа в десятичное равен
10
8. Выполнить следующие сложения двоичных чисел:
B1+B2, B2+B3, B2+B7, B7+B8, B8+B9, B1+B8, B11+B3 (итого, 7
операций сложения).Для представления слагаемых и результатов сложения использовать 16-разрядный двоичный формат со знаком. Результаты сложения перевести в десятичную систему счисления, сравнить с соответствующими десятичными числами (т.е. сравнить с суммой слагаемых, представленных в десятичной системе: B1 + B2 vs X1 + X2).
Пример: |
|
X1(10) |
2187 |
|
|
B1(2) |
0000 1000 1000 1011 |
|
|
||
+ B2(2) 0111 0110 0111 0111 |
+ X2(10) |
30327 |
|
||
|
|
= |
|
|
|
|
0111 1111 0000 0010(2) |
= 32514(10) |
|
32514(10) |
|
|
|
|
|
CF = 0 |
PF = 1 |
AF = 1 |
ZF = 0 |
SF = 0 |
OF = 0 |
При сложении двух положительных слагаемых получено положительное число. Результат выполнения операции верный и корректный, совпадает с суммой десятичных эквивалентов.
9. В отчёте (письменно, а не устно при ответе) дать подробные комментарии полученным результатам (к каждому результату сложения), как показано в таблице 2.6 книги «Введение в микроЭВМ». Расставить 6 флагов состояния.
10. При выставлении вспомогательного флага переноса (межтетрадный перенос – AF=Auxiliary Carry Flag) учитывать перенос не между 7-м и 8-м битами, а между 3-м и 4-м битами результата. При выставлении флага чётности PF учитывать только младший байт.
11. Проверить, что все пункты задания выполнены и выполнены верно.
11
B1(2) |
0000 1000 1000 1011 |
|
X1(10) |
2187 |
|
+ B8(2) 1000 1001 1000 1001 |
+ X8(10) |
-30327 |
|
||
|
|
= |
|
|
|
|
1001 0010 0001 0100(2) |
= -28140(10) |
|
-28140(10) |
|
|
|
|
|
CF = 0 |
PF = 1 |
AF = 1 |
ZF = 0 |
SF = 1 |
OF = 0 |
При сложении положительного и отрицательного слагаемых получено
отрицательное число. Результат выполнения операции верный и корректный, совпадает с суммой десятичных эквивалентов.
2.2.Состав отчёта
1.В отчёте нужно кратко описать задание, показать основные этапы вычисленияпривыполнениивсехопераций,сформулироватьвыводы.
2.Отчёт предоставить в бумажном или электронном виде (записать нафлэш-накопитель и продублировать себе на электронную почту).
2.3.Подготовка к защите
1. Изучить главу 2.3 «Арифметические операции» следующей книги: Введение в микро-ЭВМ / С.А. Майоров, В.В. Кириллов, А.А.Приблуда. – Л. : Машиностроение. Ленинградское отделение, 1988. –303, с.: ил. – Прил.: с. 279-
297.– Библиогр.: с. 298-299. – Предм. указ.:с. 300-302.
2.Прочитать и повторить информацию из статьи в Википедии: http://ru.wikipedia.org/wiki/Дополнительный_код_(представление_числа).
3.Прочитать и повторить информацию из статьи в Википедии: http://ru.wikipedia.org/wiki/Регистр_флагов.
4.При защите отчёта надо уметь отвечать на вопросы по произведённым вычислениям, вопросы по материалам лекций №1 и №2 и следующиевопросы:
1)двоичное число представлено в 9-разрядном формате без знака. Какова область допустимых значений?
2)имеется 5-разрядный компьютер, в котором используется фиксированное смещение влево на 7. Какому числу соответствует двоичная последовательность 10101?
3)имеется 2-разрядный компьютер. Какой/какие способы представления чисел будут иметь одинаковую область допустимых значений (диапазон)?
4)имеется 6-разрядный компьютер. При использовании специального знакового бита диапазон представления равен [-31;31], т.е. 63 возможных значения. Однако с помощью 5 значащих разрядов можно закодировать 32
12