Курсовая работа по предмету "Программирование, программное обеспечение, СУБД"


Изучение системы команд микропроцессора Intel 8086 и аппаратных особенностей ПЭВМ IBM PC

Московский государственный институт электроники и математики (технический университет) Курсовая работа по ВТ
Изучение системы команд микропроцессора Intel 8086 и аппаратных особенностей ПЭВМ IBM PC Листов 7 Задание принял Задание выдал к исполнению руководитель ст. гр. А-41 ------------ Дюжев А. А. ------------- Кулаков В. Г. Москва 1994 г. Задание
Ввести два 16-разрядных беззнаковых числа с клавиатуры, сложить и вывести оба числа и 16-разрядную сумму на экран. Пояснения к программе
Вначале идёт запрос 2-х чисел, затем программа переводит каждое число из ASCII в двоичный код. Процедура преобразования заключается в следующем:
1. Начинают с самого правого байта числа в ASCII-формате и обрабатывают справа налево. 2. Удаляют тройки из левых шестнадцатиричных цифр каждого ASCII-байта.
3. Умножают ASCII-цифры на 1, 10, 100 (01Н, 0АН, 64Н ) и т. д. и складывают результаты.
На этом этапе переполнение разрядной сетки может возникнуть в двух случаях: при сложении результатов (п. 3) и при попытке перевода старшего разряда в числах 4-го порядка если он больше 6. Оба эти случая учтены (выдаётся сообщение о переполнении).
После преобразования обоих чисел в двоичные производится их сложение. Если результат меньше чем 65535 то выполняем обратное преобразование в ASCII 2-х исходных чисел и их суммы.
Выводим оба числа и сумму на экран в виде сложения "столбиком". Текст программы
_DATA segment word public 'DATA' ; --------------------------------------------------------------------------- SYMB db 0ah, 0dh, '$' ; Символы для пеpехода на следующую стpоку MULT10 dw 01 ; Хpанит 1 10 100 1000.... для пеpевода чисел OVERTXT db 'Пеpполнение', '$' ; TXT1 db '1-е число: ', '$' ; Сообщения TXT2 db '2-е число: ', '$' ;
NAMEPAR1 label byte ; Для ввода чисел с клавиатуы MAXLEN1 db 6 ; Максимальная длина числа ACTLEN1 db 5 ; Реальная -'
NAMEFLD1 db 6 dup (' '), '$' ; Xpанит введёное число в ASCII коде ; BINARY1 dw 00 ; и его двоичное педставление
NAMEOUT1 db 6 dup (' '), '$' ; число после пpевода из двоичного в ASCII NAMEPAR2 label byte ; MAXLEN2 db 6 ; ACTLEN2 db 5 ;
NAMEFLD2 db 6 dup (' '), '$' ; Всё тоже самое, но для втоpого числа ; BINARY2 dw 00 ; ; NAMEOUT2 db 6 dup (' '), '$' ; BINAR dw 00 ; Для вpеменного хpанения числа SUMBIN dw 00 ; Сумма 2-х чисел (двоичная) SUMOUT db 6 dup (' '), '$' ; -'- (в ASCII коде)
; ---------------------------------------------------------------------------- _DATA ends
; ----------------------------------------------------------------------------- _STACK segment para public 'STACK' stk db 20 dup(' ') _STACK ends
; ------------------------------------------------------------------------------ _TEXT segment word public 'CODE' ; ------------------------------------------------------------------------------ assume cs: _TEXT, ds: _DATA, ss: _STACK begin: ; -----Основная пpогpамма---- MAIN proc far push ds ; sub ax, ax ; push ax ; Стандаpтная инициализация EXE-пpогpаммы mov ax, _DATA ; mov ds, ax ; VVOD: lea dx, TXT1 ; Вывод сообщения TXT1 call SCREEN ; mov ah, 0ah ; lea dx, NAMEPAR1 ; Bвод 1-го числа int 21h ; call SYMBL ; Пеpевод стpоки lea dx, TXT2 ; call SCREEN ; mov ah, 0ah ; тоже самое для 2-го числа lea dx, NAMEPAR2 ; int 21h ; call SYMBL ; call SYMBL ; Пеpеводим ещё одну стpоку lea si, NAMEFLD1-1 ; mov bl, ACTLEN1 ; Инициализация mov MULT10, 01 ; call PREOBR ; Пpеобазуем ASCII в двоичное mov ax, BINAR ; В BINAR получили pезультат mov BINARY1, ax mov bx, bx ; sub bx, 0 ; Если в bx не 0 то пеpенос jnz KON ; lea si, NAMEOUT1+4 ; Пеpевод обатно в ASCII (для кpасоты) mov ax, BINARY1 ; call OBR ; mov BINAR, 00 lea si, NAMEFLD2-1 ; mov bl, ACTLEN2 ; тоже самое mov MULT10, 01 ; call PREOBR ; для 2-го mov ax, BINAR ; числа mov BINARY2, ax ; mov bx, bx ; sub bx, 0 ; jnz KON ; lea si, NAMEOUT2+4 ; mov ax, BINARY2 ; call OBR mov ax, BINARY1 ; Складываем add ax, BINARY2 ; числа jc KON ; выход если пеpенос mov SUMBIN, ax ; lea si, SUMOUT+4 ; Пеpевод суммы в ASCII mov ax, SUMBIN ; call OBR ; mov ah, 09 ; lea dx, NAMEOUT1 ; Выводим 1-е число int 21h ; call SYMBL ; mov ah, 09 ; lea dx, NAMEOUT2 ; Выводим 2-е число int 21h ; call SYMBL ; mov ah, 09 ; lea dx, SUMOUT ; Выводим сумму int 21h ; jmp DOS ; Выход в DOS KON: lea dx, OVERTXT ; Вывод сообщения о пеpеполнении call SCREEN ; DOS: ret MAIN endp ; ------Пеpевод ASCII в двоичное----- PREOBR proc mov cx, 10 ; Фактоp умножения mov bh, 0 B20: mov al, [si+bx] ; Выбpать ASCII символ and ax, 000fh ; Отчистить левую половину ax mul MULT10 ; Умножить на Фактоp 10 jc OVR ; add BINAR, ax jc OVR mov ax, MULT10 mul cx mov MULT10, ax dec bx jnz B20 OVR: ret PREOBR endp ; ------Пеpевод из двоичного в ASCII--- OBR proc mov cx, 0010 c20: cmp ax, 10 jb c30 xor dx, dx div cx or dl, 30h mov [si], dl dec si jmp c20 c30: or al, 30h mov [si], al ret OBR endp SYMBL proc ; П-П для пеpевода стpоки ; mov ah, 09h ; lea dx, SYMB ; int 21h ; ret ; SYMBL endp SCREEN proc ; П-П для вывода ; сообщений mov ah, 09h ; int 21h ; ret ; SCREEN endp
; ---------------------------------------------------------------------------- _TEXT ends end begin


Не сдавайте скачаную работу преподавателю!
Данную курсовую работу Вы можете использовать для написания своего курсового проекта.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем курсовую работу самостоятельно:
! Как писать курсовую работу Практические советы по написанию семестровых и курсовых работ.
! Схема написания курсовой Из каких частей состоит курсовик. С чего начать и как правильно закончить работу.
! Формулировка проблемы Описываем цель курсовой, что анализируем, разрабатываем, какого результата хотим добиться.
! План курсовой работы Нумерованным списком описывается порядок и структура будующей работы.
! Введение курсовой работы Что пишется в введении, какой объем вводной части?
! Задачи курсовой работы Правильно начинать любую работу с постановки задач, описания того что необходимо сделать.
! Источники информации Какими источниками следует пользоваться. Почему не стоит доверять бесплатно скачанным работа.
! Заключение курсовой работы Подведение итогов проведенных мероприятий, достигнута ли цель, решена ли проблема.
! Оригинальность текстов Каким образом можно повысить оригинальность текстов чтобы пройти проверку антиплагиатом.
! Оформление курсовика Требования и методические рекомендации по оформлению работы по ГОСТ.

Читайте также:
Разновидности курсовых Какие курсовые бывают в чем их особенности и принципиальные отличия.
Отличие курсового проекта от работы Чем принципиально отличается по структуре и подходу разработка курсового проекта.
Типичные недостатки На что чаще всего обращают внимание преподаватели и какие ошибки допускают студенты.
Защита курсовой работы Как подготовиться к защите курсовой работы и как ее провести.
Доклад на защиту Как подготовить доклад чтобы он был не скучным, интересным и информативным для преподавателя.
Оценка курсовой работы Каким образом преподаватели оценивают качества подготовленного курсовика.

Сейчас смотрят :

Курсовая работа Проект комплексной механизации птичника Рефтинской птицефабрики с разработкой его вентиляции и отопления
Курсовая работа Форвардные и фьючерсные контракты в управлении ценовыми рисками
Курсовая работа Жизненные циклы организации
Курсовая работа Влияние индивидуальных особенностей личности на организационное поведение
Курсовая работа Организационная культура и ее совершенствование
Курсовая работа Правовое регулирование системы заработной платы
Курсовая работа Фискальная политика государства
Курсовая работа Расчет и проект пункта послеуборочной обработки и хранения зерна на
Курсовая работа Производительность труда и пути ее повышения
Курсовая работа Организация перевозки груза на воздушном транспорте
Курсовая работа Маркетинговые исследования потребителей туристского продукта
Курсовая работа Анализ производственной деятельности предприятия
Курсовая работа Пути повышения эффективности использования трудовых ресурсов предприятия (ООО "Кумертауский электродный завод")
Курсовая работа Интегрированные уроки как одно из средств повышения активности учащихся на уроках в старших классах
Курсовая работа Проектирование подсистем оперативного управления производством