Хелпикс

Главная

Контакты

Случайная статья





Оглавление. Цель работы….3. Часть 1. Арифметические действия с целыми числами….3. Часть 2. Вычисления с плавающей точкой….5. Часть 3. Условные переходы…6. Результат работы ….9. Цель работы.. Ход рабо



 

   МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

КАФЕДРА № 34

ОТЧЕТ 

 

ПРЕПОДАВАТЕЛЬ

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

 

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №1
 
по курсу: ИНФОРМАТИКА
 
 

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №       Р.С. Кругляков
      подпись, дата   инициалы, фамилия

 

Санкт-Петербург, 2020

Оглавление

Цель работы…………………………………………………….3

Часть 1. Арифметические действия с целыми числами….3

Часть 2. Вычисления с плавающей точкой………………...5

Часть 3. Условные переходы…………………………………6

Результат работы ……………………………………………...9

Цель работы.

Целью работы является изучение архитектуры сопроцессоров х86: регистров, системы команд, способов адресации и принципов написания программ. Изучение проводится на примере команд пересылки данных, арифметических, команд адресации и команд сопроцессора х86.

Ход работы.

1) Получить задание

2) Составить алгоритм решения

3) Составить трассировочную таблицу алгоритма

4) Написать программу, реализующую алгоритм

5)Внести исходные данные и проверить правильность выполнения

6) Вывод

Часть 1. Арифметические действия с целыми числами.

Вычислить значение выражения a/(b+c)

I. Для хранения чисел a, b, c в 16-ричной системе счисления используем регистры ax, bx, cx соответственно. Разрядность входных значений -  16 бит, дополнительный код.

 II. Результат программы будет храниться в регистре ax.

III. Последовательность выполнения работы:

1) Представляем числа в 16-ричной системе счисления:

· -1910 =-001316

Инвертируем: 001316=FFEC16

Прибавляем единицу: FFEC16+116=FFED16

Тогда: -1810=FFED16

 

· -1810=-001216

Инвертируем: 001216=FFED16

Прибавляем единицу: FFED16+116=FFEE16

Тогда: -1810=FFEE16

· -1510=000E16

Инвертируем: 000F16=FFF0c16

Прибавляем единицу: FFF016+116=FFF116

Тогда: -1510=FFF116

 

2) Складываем значения из регистров bx и cx,при этом сумма записывается в bx.

3) Произведем деление a/b, при этом целая часть записывается в ax, а остаток от деления в dx

IV. Текст программы.

1) mov eax,0xffffffed

2) mov ebx,0xffffffee

3) mov ecx,0xfffffff1

4) mov edx,0xffffffff

5) add ebx,ecx

6) idiv ebx

7) ret

V. Результаты работы программы на наборах входных данных.

 

 

 

VI. Трассировочная таблица в соответствии с последовательностью

действий:

 

№ строки ax bx cx dx
1-4 -19 -18 -15 -1
-19 -33 -15 -1
-33 -15 -19

 

Результат 0 – совпадает с вычислениями вручную.

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.