14660

Изучение арифметических команд и команд пересылки данных

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

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

Рузанов И.В. 3922 Вариант №1 Лабораторная работа №1. Цель работы: приобрести практические навыки работы с микропроцессором Intel 80х86 изучить возможности устройства Intel 80х86 практически освоить режимы его работы. № п/п 1ое слаг

Русский

2013-06-09

68 KB

5 чел.

Рузанов И.В. 3922

Вариант №1

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

Цель работы: приобрести практические навыки работы с микропроцессором Intel 80х86, изучить возможности устройства Intel 80х86, практически освоить режимы его работы.

№ п/п

1-ое слагаемое

2-ое слагаемое

3-ое слагаемое

1

0009

2A4D

631E

cdseg segment 'code'

     org 100h

start:

mov    ax,0009h

mov    cx,2A4Dh

mov    dx,631Eh

add    ax,cx

add    ax,dx

int    20h

cdseg ends

end start

Ответ:

AX= 8D7416.

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

Изучение арифметических команд и

команд пересылки данных

Например, необходимо найти сумму ряда чисел. При этом задача состоит в том, чтобы осуществить суммирование нескольких чисел сразу. Эти числа могут представлять собой совокупности входных сигналов, находящихся под управлением системы, число изделий (или число сообщений), изготовленных (или принятых) за определенный промежуток времени.

Программа сложения ряда чисел

№ п/п

Исходный ряд чисел

1

046E,05E7,240F,3031,0820,1AF9,1F32

cdseg segment 'code'

     assume cs:cdseg

org 100h

start:

mov si,offset array

lodsw

mov    cx,ax    ; count of digits

mov    bx,si    ; addr of array

sub    ax,ax

m1:  add    ax,[bx]

    dec    cx

    je     fin

    add    bx,0002

jmp    m1

fin:

    int    20h

array dw 7, 046Eh,05E7h,240Fh,3031h,0820h,1AF9h,1F32h

cdseg ends

end start

Ответ:

A0E0 16.

Рассмотрим арифметику для чисел, занимающих несколько ячеек. Задача состоит в том, чтобы сложить два числа длиной более 16 бит каждое. Исходные числа располагаются в области памяти таким образом, что сначала идут младшие разряды, а затем более старшие. Полученную  сумму необходимо поместить в те ячейки памяти, где хранилось первое число.

№ п/п

1-ое слагаемое

2-ое слагаемое

1

D4241C879DAB

DB893E0731C5

cdseg segment 'code'

     assume cs:cdseg

org 100h

start:

mov    cx,(offset data2 -offset data1)/2

mov    di,offset data1

mov    si,offset data2

m:

mov   ax,[di]

adc   ax,[si]

stosw

 inc si

 inc si

dec   cx

jne    m

int    20h

data1    dw  D424h,1C87h,9DABh

data2    dw  DB89h,3E07h,31C5h

cdseg ends

end start

Ответ:

Сумма равна   1AFA D5A8 ECF70.

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

Обработка массивов информации и

организация циклов

Рассмотрим следующую задачу. Массив чисел расположен в области памяти, начиная с адреса  NNNN, и состоит из N элементов. Необходимо переслать массив в другую область памяти, начиная с  адреса DDDD. В программе для МП Intel 80x86  в качестве адресного    регистра используются регистры si и di. Необходимо учитывать, что при каждом проходе программа должна изменять содержимое обоих адресных регистров.

№ п/п

Исходный массив

1

D424,1C87,9DAB,DB89,3E07,31C5,14B2,4F87,8A00

Программа:

cdseg segment 'code'

org 100h

start:

mov    cx,(offset data2 - offset data1)/2

mov    si,offset data1

mov    di,offset data2

repne movsw

int    20h

data1 dw D424h,1C87h,9DABh,DB89h,3E07h,31C5h,14B2h,4F87h,8A00h

data2 dw 0AAAAh,0AAAAh,0AAAAh,0AAAAh,0AAAAh,0AAAAh,0AAAAh,0AAAAh,0AAAAh

cdseg ends

end start

Массив данных был перемещен в область памяти под названием data2.

В ряде случаев возникает необходимость выбрать из массива информации данные, представляющие собой ряд максимальных, либо минимальных величин. Предположим, что необходимо написать программу для решения следующей задачи. Дан массив А1, состоящий из N однобайтовых чисел. Необходимо переписать из массива А1 в массив В1 все числа в диапазоне от Н1 до Н2.

№ п/п

Исходный массив

Нижний Предел

Верхний предел

1

D424,1C87,9DAB,DB89,3E07,31C5,14B2

24C3

4433

cdseg segment 'code'

     assume cs:cdseg

org 100h

start:

mov    cx,(offset dest - offset source)/2

mov    si,offset source

mov    di,offset dest

m1:

  lodsw

  cmp ax, 24C3h     ; min

   jb m2

   cmp ax, 4433h    ; max

   ja m2

   stosw

  m2:

loop m1

int    20h

source     dw  0D424h,1C87h,9DABh,0DB89h,3E07h,31C5h,14B2h

dest     dw (offset dest - offset source)/2 dup (0)

cdseg ends

end start

Ответ: 3E07,31C5


 

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

20959. Національно-культурне піднесення 1920-1930-х рр.. Українська культура в період тоталітаризму 1.42 MB
  Початок 1920-х років було для української культури позбавленим світлих перспектив. Розділ Україні між сусідніми державами гальмував національну інтеграцію, в тому числі і в сфері культури. Культурний потенціал Україні був підірваний руйнівними наслідками громадянської війни, часткової окупацією країни. Військове лихоліття не тільки знищило духовні і матеріальні цінності, а й основного творця культурних цінностей - інтелігенцію.
20960. ПАРОЛЬНИЙ ЗАХИСТ 101 KB
  Текст програми include iostream include fstream include conio.h include string include iomanip include windows.h using namespace std; string decrypt string str { for unsigned int i=0; i str.size; i if str[i]=' ' str[i]=charabsshortstr[i]255; return str; } string encrypt string str { for unsigned int i=0; i str.
20961. Шифрування та дешифрування даних за допомогою алгоритмів перестановки (збивання) 141.09 KB
  У якості інформації використовувати копію файлу з розробленою програмою програма дешифрування інформації повернення початкового вигляду файла; Індивідуальні завдання: Метод €œспутаної шини€ Текст програми: DEFINT IN: DEFSTR S RANDOMIZE 231 CLS: LOCATE 1 1 Lot = 5 s = FOR i=1 TO 64:s=sCHR6525RND:NEXT PRINT s; text : sav = s s = FOR i=1 TO 192: s=sCHR255RND: NEXT 'шифрование FOR i = 0 TO Lot sc=MIDss1I3232 l=2^i:sl= : r= FOR j = 1 TO 32 kg=ASCMIDsc j 1 kl=ASCMIDs j 1...
20962. Шифрування та дешифрування даних за допомогою алгоритмів підстановки (заміна) 69.72 KB
  Програма дешифрування інформації повернення початкового вигляду файла; а також оцінити правильність процедури €œшифрування – дешифрування€ відсутність зміни результату відносно початкового файлу. Підготовка даних полягає в: Введення вихідного тексту; Створення тимчасового текстового файлу файл 1 та занесення в нього вихідного тексту; Створення тимчасового текстового файлу файл 2 для подальшого занесення в нього результатів роботи програми; Введенні або автоматичному виборі ключа; Для режиму дешифрування якщо ключ...
20963. Шифрування та дешифрування даних з використанням режиму шифрування 98.95 KB
  Індивідуальні завдання: алгоритм Counter Mode CTR Текст програми AutoSeededRandomPool prng; SecByteBlock keyAES::DEFAULT_KEYLENGTH; prng.size ; byte ctr[ AES::BLOCKSIZE ]; prng.GenerateBlock ctr sizeofctr ; string plain = CTR Mode Test ; string cipher encoded recovered; try { cout plain text: plain endl; CTR_Mode AES ::Encryption e; e.size ctr ; The StreamTransformationFilter adds padding as required.
20964. Шифрування та дешифрування даних за допомогою алгоритмів гамування 30.38 KB
  Індивідуальні завдання : конгруэнтные генераторы Линейными конгруэнтными генераторами являются генераторы следующей формы: в которых это nый член последовательности а предыдущий член последовательности. Период такого генератора не больше чем m. Если a b и m подобраны правильно то генератор будет генератором с максимальным периодом и его период будет равен m. Например для линейного конгруэнтного генератора b должно быть взаимно простым с m.
20965. Використання алгоритмів шифрування з відкритими ключами 45.99 KB
  Постановка задачі Необхідно розробити і налагодити дві програми: Програма шифрування інформації з використанням визначених алгоритмів. Програма дешифрування інформації повернення початкового вигляду файла; а також оцінити правильність процедури €œшифрування – дешифрування€ відсутність зміни результату відносно початкового файлу.09 funkcja f dla kazdej rundy czynniki pierwsze klucz zakryty p1 4 = 0 q1 4 = 0 p = 19; q = 23; n = pq; M = random n; print Message = M; print Cryptogram = C; C = M^2 n; m1= C ^...
20966. Використання односпрямованих хеш-функцій 170.04 KB
  І КІТ39 Практична робота №26 €œВикористання односпрямованих хешфункцій€ за курсом €œЗахист інформації у комп’ютерних системах та мережах€ Ціль роботи : cтворення програм генерації дайджесту повідомлення за допомогою хешфункцій. Індивідуальні завдання: алгоритм HAVAL HAVAL однонаправленная хешфункция разработанная Yuliang Zheng англ. Для произвольного входного сообщения функция генерирует хешзначение называемое дайджестом сообщения которое может иметь длину 128 160 192 224 или 256 бит. Висновок: за час виконання практичноъ...
20967. Понятие мировоззрения, его структура и уровни. Формы мировоззрения: мифологическое, религиозное и философское 480 KB
  Систематизирует в самом общем виде представления человека о мире и самом себе. Антропоцентризм тип философского мировоззрения в центре которого стоит проблема человека Европа эпохи Возрождения нового и новейшего времени современные философские школы. Теоретическое мышление посредством абстракций обобщений сравнений идеализациий преодолевает границы образночувственного восприятия вскрывает существенные связи и отношения мира и человека выявляет новые горизонты познания и осмысления действительности. Поэтому осмысление проблем...