Учебное пособие для студентов заочной формы обучения Санкт-Петербург

Вид материалаУчебное пособие

Содержание


Пример выполнения курсового проекта
ЗАДАНИЕ на курсовое проектирование по дисциплине: “Организация ЭВМ и систем” Студенту
Направление подготовки
Индивидуальное задание № 28
1 Аналитическая часть
1.1 Двоично-десятичное кодирование
1.2 Операции двоично-десятичной арифметики
1.3 Кодирование текстовых данных
2.1 Блок – схема алгоритма
2.2 Распределение памяти и листинг программы с комментарием
2.3 Результаты тестирования программы
3 Описание использованных при проектировании средств вычислительной техники
Список литературы
Приложение а
Приложение б
Направление подготовки
Подобный материал:
1   ...   4   5   6   7   8   9   10   11   12

ПРИМЕР ВЫПОЛНЕНИЯ КУРСОВОГО ПРОЕКТА


Титульный лист см. ПРИЛОЖЕНИЕ А

Санкт-Петербургский государственный технологический институт

(технический университет)

ЗАДАНИЕ

на курсовое проектирование по дисциплине: “Организация ЭВМ и систем”

Студенту: Иванов Серафим Петрович______группы №__967_____________

Форма обучения: заочная______________________________________________________

Факультет: Информатики и управления__________________________________________

Кафедра: Систем автоматизированного проектирования и управления________________

Направление подготовки: 230100 – Информатика и вычислительная техника__________

Уровень подготовки: бакалавр техники и технологии______________________________

Тема: Разработка программ преобразования форматов двоичных данных и сортировок в машинных кодах микро-ЭВМ СМ-1800 с помощью эмулятора на ПК

Исходные данные к работе

1. Лекции по дисциплине “Организация ЭВМ и систем”. Фамилия И.О. лектора_________

2. МикроЭВМ СМ-1800 и её эмулятор на ПК: Методические указания.- СПб.:___________ СПбГТИ(ТУ), 2006.-21с._________________________________________________________

3. Стандартное программное обеспечение. Монитор: Методические указания.- СПб.:_____ СПбГТИ(ТУ), 2006.-23с._________________________________________________________

4. МикроЭВМ СМ-1800. Архитектура, программирование, применение / А.В. Гиглавный, Н.Д. Кобанов, Н.Л. Прохоров, А.Н. Шкамарда. – М.: Финансы и статистика, 1984. – 214с._

5. Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем: Учебник для вузов. –СПб.:Питер, 2004. -668с.____________________________________________________________________

Перечень подлежащих разработке вопросов, документов

1. Обзор литературы с целью углубленного изучения раздела по индивидуальному заданию

2. Составление реферативной части проекта с использованием оригинальных чисел из индивидуального задания

3. Разработка алгоритма решения задачи

4. Распределение памяти (назначение регистров и ячеек памяти)

5. Написание ассемблерного текста программной реализации алгоритма

6. «Ручная» трансляция ассемблера в машинный код по таблицам

7. Отладка программы на эмуляторе

8. Получение и фиксация результатов на тестовых значениях из Задания

Перечень графического материала

1. Алгоритм (блок-схема) программы преобразования форматов

2. Блок-схемы отдельных процедур (подпрограмм), если таковые имеются

Виды и объемы работы, выполняемые с использованием ЭВМ и САПР

1. Разработка программного продукта в среде эмулятора микроЭВМ СМ-1800

2. Оформление пояснительной записки с помощью Microsoft World, Microsoft Visio

Дата выдачи задания: 01.10.10 Дата представления работы к защите: 01.02.11

Руководитель

курсового проектирования ____ххххххх, 26.01.11_ ______хххххх_________

(подпись, дата) (ФИО)

Задание принял

к исполнению ______ххххххх, 01.10.10 ___Иванов С.П.________

(подпись, дата) (ФИО)

ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ № 28


К курсовому проекту «Организация ЭВМ и систем»


1. Подготовить для аналитической части реферативный материал на тему:


Двоично-десятичное кодирование. Арифметические действия над ДД-кодами. Стандарты кодирования текстов. Примеры арифметики с ДД-кодами привести на основе чисел из таблицы п.2.


2. Задача для разработки алгоритма и программной реализации на Эмуляторе микро-ЭВМ СМ-1800


Пользуясь программой-монитором, занести в память ЭВМ, начиная с адреса 500016, следующий массив из 10 восьмиразрядных констант:


Адрес16

Константа16

Адрес16

Константа16

5000

5001

5002

5003

5004

8D

57

35

FF

80

5005

5006

5007

5008

5009

00

F4

9A

07

0A


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


Составить программу, которая исходный массив чисел (с адреса 500016) преобразует в массив соответствующих двухбайтных двоично-десятичных кодов с адреса 700016 (700016 – младшая цифра числа, 700116 – старшая цифра и т.д.). Программу располагать в памяти с ячейки 400016.

Содержание


Введение…………………………………………………………………2

1 Аналитическая часть……………………………………………..3

2 Практическая разработка………………………………………….

2.1 Блок- схема алгоритма………………………………………

2.2 Распределение памяти и листинг программа………………

2.3 Результаты тестирования программы………………………

3 Описание средств вычислительной техники……………………..

Выводы…………………………………………………………………….

Список литературы………………………...……………………………..

1 Аналитическая часть


Так как содержание этого раздела записки согласно Заданию повторяется в нескольких вариантах, мы не приводим полный текст реферата на эту тему, а лишь перечень ключевых моментов. Эти моменты обязательно должны быть раскрыты в аналитическом обзоре, чтобы показать глубину знания темы учащимся. Этой же цели служит и требование подменить числовые примеры из литературных источников на числа из Индивидуального задания. Это требование является элементом контроля усвоения материала. Многоточия в приведенном ниже примере реферативного обзора показывают, что авторами образца Записки опущены подробности описания, которые студенты должны будут восстановить!


1.1 Двоично-десятичное кодирование


Двоично-десятичная система счисления получила большое распространение там, где существует необходимость частого использования процедуры десятичного ввода- вывода…


В этой системе счисления все десятичные цифры отдельно кодируются четырьмя двоичными цифрами … Различные варианты ДД-кодировок…


Преобразование двоичных чисел в двоично-десятичные и обратно…

(Собственные примеры!!!)


1.2 Операции двоично-десятичной арифметики


Операции двоично-десятичной арифметики выполняются в два этапа: …

Сложение…

(Примеры!!! Подробно)


Вычитание…

(Примеры!!! Подробно)


1.3 Кодирование текстовых данных


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

Все современные таблицы кодировок происходят от …

Кодировка ASCII приведена в таблице …


Аналогичные системы кодирования текстовых данных были разработаны и в других странах. Так, например, в СССР в этой области действовала система кодирования КОИ-7 (код обмена информацией, семизначный). Однако поддержка производителей оборудования и программ вывела американский код ASCII на уровень международного стандарта, и национальным системам кодирования пришлось «отступить» во вторую, расширенную часть системы кодирования, определяющую значения кодов со 128 по 255. Отсутствие единого стандарта в этой области привело к множественности одновременно действующих кодировок. Только в России можно указать три действующих стандарта кодировки и еще два устаревших.


Все это привело к появлению нового кодового стандарта, так называемого кода КОИ-8…


На базе ГОСТ КОИ-8 сделана koi8-r (кодовая страница 878) — применяется в мире Linux…


Кодировка Microsoft Windows, обозначаемая сокращением CP1251…

Кодировка CP866...

Кодировка Mac…

Кодировка ISO 8859…


Юнико́д, или Унико́д (англ. Unicode) — стандарт кодирования символов, позволяющий представить знаки практически всех письменных языков…


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

2 Практическая разработка

2.1 Блок – схема алгоритма


да

нет




нет

нет

да

да



2.2 Распределение памяти и листинг программы с комментарием


SP – адрес дна стека программы

С – счетчик цикла, также регистр C используется для хранения старшего байта

H,L – текущий адрес элемента исходного массива

D,E – текущий адрес элемента результирующего массива

500016 – адрес начала массива исходных чисел

700016 – адрес начала массива результатов


Адрес

Данные

Ассемблерный код

Комментарий

4000

21

LXI SP,A000h

Создание стека программы

4001

00

4002

A0

4003

21

LXI H,5000h

Загрузка в H,L адреса, начиная с которого будет считан массив исходных констант

4004

00

4005

50

4006

11

LXI D,7000h

Загрузка в пару D,E адреса, начиная с которого будет записан массив результатов

4007

00

4008

70

4009

01

LXI B,000Ah

Создание в регистре С счетчика цикла преобразования

400A

0A

400B

00

400C

7E

MOV A,M

Загрузка констант из памяти

400D

C5

PUSH B

Сохранение в стек счетчика цикла

400E

0E

MVI C,00h

Обнуление регистра С

400F

00

4010

C3

JMP 402Ah

Переход к подпрограмме, получения старшего байта

4011

2A

4012

40

4013

CE

ACI 64h

Сложение аккумулятора с 6416 для восстановления значения при лишнем вычитании

4014

64

4015

47

MOV B,A

Сохранение аккумулятора в регистре В

4016

3E

MVI A,00h

Обнуление аккумулятора

4017

00

4018

C3

JMP 4033h

Переход к подпрограмме, получения младшего байта

4019

33

401A

40

401B

12

STAX D

Сохранение младшего байта двоично-десятичного числа в памяти

401C

79

MOV A,C

Загрузка в аккумулятор из регистра С старшего байта двоично-десятичного кода

401D

13

INX D

Переход к следующему адресу записи

401E

12

STAX D

Сохранение старшего байта двоично-десятичного числа

401F

13

INX D

Переход к следующему адресу записи

4020

C1

POP B

Восстановление из стека счетчика цикла

4021

OD

DCR C

Отрицательное приращение регистра С

4022

CA

JZ 403Dh

Если счетчик достиг нуля, то программа завершена

4023

3D

4024

40

4025

4F

MOV C,A

Иначе аккумулятор копируем в регистр С

4026

23

INX H

Переход к следующему адресу записи

4027

C3

JMP 400Ch

Возврат к началу подпрограммы

4028

0C

4029

40

402A

D6

SUI 64h

Вычитание из аккумулятора 6416, для получения старшего байта

402B

64

402C

DA

JC 4013h

Если число станет меньше 6416, то возвращаемся к основной процедуре

402D

13

402E

40

402F

0C

INR C

Положительное приращение регистра С

4030

C3

JMP 402Ah

Возврат к началу подпрограммы для получения старшего байта

4031

2A

4032

40

4033

05

DCR B

Отрицательное приращение регистра В, для получения младшего числа

4034

CA

JZ 401Bh

Если Z=0, весь остаток исходных констант записывается в аккумулятор; если Z=1, то возврат по адресу 4018

4035

1B

4036

40

4037

C6

ADI 01

Увеличение аккумулятора на 1

4038

01

4039

27

DAA

Двоично-десятичная коррекция аккумулятора


403A

C3

JMP 4033h

Возврат к началу подпрограммы

403B

33

403C

40

403D

C3

JMP 40h

Выход из программы в монитор

403E

40

403F

00



2.3 Результаты тестирования программы


При запуске программы, на экране Монитора выводятся следующие данные


По адресу 5000 лежит массив исходных данных:


Адрес

Константа16

5000

8D

5001

57

5002

35

5003

FF

5004

80

5005

00

5006

F4

5007

9A

5008

07

5009

0A

По адресу 7000 лежит массив результатов


Адрес

Константа16

7000

41 01

7002

87 00

7004

53 00

7006

55 02

7008

28 01

700А

00 00

700С

44 02

700Е

54 01

7010

07 00

7012

10 00


Таким образом, исходному массиву соответствует:


Константа

Результат10

8D

141

57

87

35

53

FF

255

80

128

00

00

F4

244

9A

154

07

07

0A

10


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

an-1 qn-1 + an-2 qn-2 + ... + a1 q1 + a0 q0 + a-1 q-1 + ... + a-m q-m,


где  ai  — цифры системы счисления;   n и m — число целых и дробных разрядов, соответственно.q основание системы счисления, в данном случае q =16

Например: 8*161+D*160=8*16+13=128+13=141


Следовательно, программа работает верно.


3 Описание использованных при проектировании средств вычислительной техники


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


Процессор: Intel Core2 Quad Q6600 2.4 GHz.

Оперативной памяти 256Мб

Видеокарта: Radeon HD 3850, 1024 Мб видеопамяти;

Жесткий диск: 500 GB;

Клавиатура, "мышь".

Стандартное программное обеспечение:

Microsoft Windows XP, Microsoft Office 2003

Практическая разработка данного курсового проекта выполнялась на эмуляторе микроЭВМ СМ–1800 v3.01.


Выводы


Курсовой проект выполнен полностью в соответствии с Заданием. (Далее следуют особые отметки о возможных вариантах решения и возможных усовершенствований алгоритма.)


Список литературы

  1. МикроЭВМ СМ-1800. Архитектура, программирование, применение / А.В. Гиглавный, Н.Д. Кобанов, Н.Л. Прохоров, А.Н. Шкамарда. – М.: Финансы и статистика, 1984.
  2. Гиляров, В.Н. МикроЭВМ СМ-1800 и ее эмулятор на ПК: Методические указания к лабораторной работе / В.Н. Гиляров. - СПб.: СПбГТИ(ТУ), 2006.
  3. Гиляров В.Н. Видеотерминал и клавиатура микроЭВМ: Методические указания к лабораторной работе / В.Н. Гиляров. - СПб.: СПбГТИ(ТУ), 2006.



СПИСОК ЛИТЕРАТУРЫ

  1. Гиляров В.Н. Организация ЭВМ и систем [Текст]: учебное пособие для студентов заочной формы обучения. – СПб.: СПбГТИ(ТУ), 2009. - 84с.
  2. Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем: Учебник для вузов. –СПб.:Питер, 2004. -668с.
  3. Универсальные машины семейства СМ-1800 /Кабанов Н.Д. и др./ Под ред. Преснухина Л.Н., М.: Высш. шк., 1988 – 158с.
  4. МикроЭВМ СМ-1800. Архитектура, программирование, применение / А.В. Гиглавный, Н.Д. Кобанов, Н.Л. Прохоров, А.Н. Шкамарда. – М.: Финансы и статистика, 1984. – 214с.
  5. Гиляров В.Н. МикроЭВМ СМ-1800 и ее эмулятор на ПК: Методические указания к лабораторной работе / В.Н. Гиляров. - СПб.: СПбГТИ(ТУ), 2006. – 22с.
  6. Гиляров В.Н. Видеотерминал и клавиатура микроЭВМ: Методические указания к лабораторной работе / В.Н. Гиляров. - СПб.: СПбГТИ(ТУ), 2006. – 20с.
  7. Гиляров В.Н. Стандартное программное обеспечение. Монитор: Методические указания к лабораторной работе / В.Н. Гиляров. - СПб.: СПбГТИ(ТУ), 2006. – 22с.



ПРИЛОЖЕНИЕ А

(обязательное)


Федеральное агентство по образованию


Государственное образовательное учреждение

высшего профессионального образования

«Санкт-Петербургский государственный технологический институт

(технический университет)»


Кафедра систем автоматизированного проектирования и управления


Направление подготовки: 230100 – Информатика и вычислительная техника

Уровень подготовки: бакалавр техники и технологии

Учебная дисциплина: Организация ЭВМ и систем

Курс: Х

Группа: ХХХ


Пояснительная записка к курсовому проекту на тему:

«Разработка программ преобразования форматов двоичных данных и сортировок в машинных кодах микро-ЭВМ СМ-1800 с помощью эмулятора на ПК»


Вариант № Х


Студент(ка) _______________ Фамилия И.О.


Руководитель _______________ Фамилия И.О.


Рекомендуемая оценка _______________


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

2011

ПРИЛОЖЕНИЕ Б

(обязательное)

Санкт-Петербургский государственный технологический институт

(технический университет)

ЗАДАНИЕ

на курсовое проектирование по дисциплине: “Организация ЭВМ и систем”

Студенту: Фамилия Имя Отчество (полностью)______группы №____________________

Форма обучения: заочная______________________________________________________

Факультет: Информатики и управления__________________________________________

Кафедра: Систем автоматизированного проектирования и управления________________

Направление подготовки: 230100 – Информатика и вычислительная техника__________

Уровень подготовки: бакалавр техники и технологии______________________________