31925

Архітектура комп’ютерів

Лабораторная работа

Коммуникация, связь, радиоэлектроника и цифровые приборы

Проаналізувати текст програми lb1. text SEGMENT ORG 100h begin: MOV x20 MOV bx30 DD xbx MOV cxx DD ch16 RET text ENDS END begin Початок сегменту коду програми під назвою text†Встановлення лічильника адреси на зміщення 100H шістнадцятирічне число 100 відносно початку сегменту кода Занесення до регістру АX числа 20 Занесення до регістру BX числа 30 Додавання двох чисел що містяться в регістрах АX та BX Занесення до регістру CX числа з регістру X Збільшення числа що міститься у старших 8 бітах регістра СX на 16 Команда...

Украинкский

2013-09-01

286.5 KB

3 чел.

Національний технічний університет України

«Київський політехнічний інститут»

ММІФ

Кафедра лікувально-діагностичних комплексів

Лабораторна робота №1

з дисципліни

«Архітектура комп’ютерів»

Виконав

студент 3 курсу

гр. ЛД-71

Логвіненко М.

Київ 2010


Мета роботи:
Знайомство з структурою персонального комп’ютера та основами програмування на мові асемблера. Студенту треба навчитися працювати з програмою-транслятором Turbo-Assembler (TASM) та з засобами для відлагодження асемблерних програм AFD та TD.

Проаналізувати текст програми lab1.asm, зрозуміти зміст кожної з асемблерних команд.

text SEGMENT

 ORG 100h

begin: MOV ax,20

MOV bx,30

 ADD ax,bx

MOV cx,ax

ADD ch,16

 RET

text ENDS

 END begin

Початок сегменту коду програми під назвою "text

Встановлення лічильника адреси на зміщення 100H (шістнадцятирічне число 100) відносно початку сегменту кода

Занесення до регістру АX числа 20

Занесення до регістру BX числа 30

Додавання двох чисел, що містяться в регістрах АX та BX   

Занесення до регістру CX числа з регістру AX

Збільшення числа, що міститься у старших 8 бітах регістра СX, на 16

Команда повернення з підпрограми

Кінець сегменту коду програми під назвою "text”

Кінцева директива END, що містить назву програми-процедури "begin"


Послідовність дій, які потрібно виконати для компіляції асемблерної програми. Розглянути два випадки: компіляцію com-програми та компіляцію exe-програми.

Для того, щоб програма, написана на мові асемблера, могла бути виконана процесором, вона, як і програма на будь-якій іншій мові, окрім машинної, має бути трансльована (за допомогою асемблера) та скомпонована (за допомогою редактора зв’язків).

Тут ми розберемо послідовність дій, необхідну для трансляції і компонування програм за допомогою транслятора TASM.

Трансляція виконується командою

TASM ім’я_файлу

Компонування EXE-програми здійснюється за допомогою команди

TLINK об’єктний_модуль

Для компонування COM-програми необхідно додати ключ /TINY:

TLINK /TINY об’єктний_модуль


Завантажити програму lab1.com до відладчика AFD та крок за кроком виконати всі її команди. Після виконання кожної команди аналізувати стан кожного з регістрів процесора.

Стан регістрів до виконання команд.

Регістр AX=0014

Регістр BX=001E

Регістр AX=0032

Регістр CX=0032

Регістр CX=1032


Завантажити програму lab1.com до відладчика TD та крок за кроком виконати всі її команди. Після виконання кожної команди аналізувати стан кожного з регістрів процесора.

Стан регістрів до виконання команд.

Регістр AX=0014

Регістр BX=001E

Регістр AX=0032

Регістр CX=0032

Регістр CX=1032


Таблиця з трьох колонок. До першої занести початковий код асемблерної програми файлу lab1.asm, до другої - її машинні коди, а до третьої - стан усіх регістрів процесору після її виконання.

Код асемблерної програми

Машинні коди асемблерної програми

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

text SEGMENT

ORG 100h

begin: MOV ax,20

MOV bx,30

ADD ax,bx

MOV cx,ax

ADD ch,16

RET

text ENDS

END begin

B81400

BB1E00

03C3

8BC8

80C510

C3

AX 0032

BX 001E

CX 1032


Висновки за роботою:


 

А также другие работы, которые могут Вас заинтересовать

50885. Анимация движения во FLASH MX 2004. Движение по маршруту. Программная анимация 4.82 MB
  Анимация трансформации формы (морфинг). Этот вид анимации следует реализовывать тогда, когда один графический объект мультфильма должен плавно видоизмениться в другой. Вы задаете только начальную и конечную формы, а промежуточные кадры будут заполнены автоматически.
50886. Программирование в Delphi. Разработка циклических программ. Цикл с пошаговой сменой аргумента 5.46 MB
  Научиться составлять и реализовывать программы решения задач с использованием оператора цикла с пошаговой сменой аргумента FOR. Эта последовательность действий образует тело цикла. В теле цикла используется переменная которая при каждом повторении тела цикла меняется и определяет число повторений цикла. Такая переменная называется параметром цикла.
50888. Определение частотных характеристик систем автоматического управления 516 KB
  Экспериментально определим частотные характеристики пропорционального (усилительного) звена. Передаточная функция звена. Построение...
50890. Создание простых сценариев в Flash 8 229.5 KB
  Прежде чем приступить к созданию сценария вспомните что: Сценарий это небольшой независимый блок кода который помещается в кадр анимации или присваивается экземпляру символа чаще кнопке реже клипу. Сценарий срабатывает при зданнoм событии; например при показе данного кадра при щелчке на кнопке или при загрузке клипа. Сценарий составляется из операторов коротких команд выполняющих одно действие например: переход на заданный кадр остановку головки воспроизведения на какомлибо кадре загрузку в браузер заданного файла и т. Сценарий...
50892. Виконання операцій зарахування коштів по вкладному рахунку в національній валюті фізичних осіб їх документальне оформлення. Робота з вікнами та аркушами книг MS Excel 271.69 KB
  Банки можуть перераховувати грошові кошти на вкладний (депозитний) рахунок юридичної особи з її іншого вкладного (депозитного) рахунку, відкритого в цьому банку, лише в разі зміни банком порядку бухгалтерського обліку рахунку юридичної особи...
50893. Разработка простых компонентов. Внедрение компонента в сборку 35.5 KB
  Вывести массив объектов на экран с помощью цикла forech. Вывести список товаров хранящихся больше месяца и стоимость которых превышает 1 000 000 р. Вывести информацию о студентах у которых доход на члена семьи менее двух минимальных зарплат. Вывести информацию о рейсах которыми можно воспользоваться для прибытия в пункт назначения раньше заданного времени.