35397

Резервування і ініціалізація памяті

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

Информатика, кибернетика и программирование

Мета: Навчитися резервувати і ініціалізувати память під програми на асемблері. Це основна команда пересилки даних. Вона реалізує найрізноманітніші варіанти пересилки. Відзначимо особливості застосування цієї команди.

Украинкский

2014-10-21

54.5 KB

3 чел.

еревко О.В.                                                                                                    2ПМС-07

Практична робота №19

Тема: Резервування і ініціалізація пам'яті.

Мета: Навчитися резервувати і ініціалізувати пам'ять під програми на асемблері.

Устаткування: ПК. Програма Turbo Assembler 5.0.

  1.  Правила ТБ.
  2.  Індивідуальне завдання

Текст програми

masm

model small

stack 256

.data

 per_1 db 23

 per_2 dw 9856

 per_3 dd 9875645

 per_4 dw 29857

.code

main:

   mov ax,@data

   mov ds,ax

exit:

   mov ax,4c00h

   int 21h

end main

masm

  •  транслятор

model small

- директива и модель памяти 

stack 256

- сегмент стека модуля и розміром стека

.data

- сегмент даних

per_1 db 23

per_2 dw 9856

per_3 dd 9875645

per_4 dw 29857

- присвоєння змінним значень з урахуванням типів данних

.code

  •  сегмент коду

mov ax,@data

mov ds, ax

-  загрузка в сегментний регістр ax адрес хранения переменних в памяти пам’яті використовуючи регістр ds

exit:

- обозначение метки

mov ax,4c00h

int   21h

end main

- завершение роботи

результат роботи програми

  1.  Контрольні питання.
    1.  Чим є директиви сегментації?

Програма розбивається на декілька сегментів, кожний з яких має своє функціональне призначення.

  1.  Перерахуйте сегментні регістри і групи, на які вони діляться.

Сегмент вводу cs, даних ds, стека ss, дополнительний ds

  1.  У яких випадках використовують спрощені директиви сегментації?

Спростити опис для простих програм, що містять по одному сегменту для коду, даних і стека.    

 

  1.  Команда пересилки даних mov і особливості її використовування.

Це основна команда пересилки даних. Вона реалізує найрізноманітніші варіанти пересилки. Відзначимо особливості застосування цієї команди.

  •  Командою MOV не можна здійснити пересилку з однієї області пам'яті в іншу. Якщо така необхідність виникає, то потрібно використовувати як проміжний буфер будь-який доступний в даний момент регістр загального призначення.
  •  Не можна  завантажити в сегментний регістр значення безпосередньо з пам'яті. Для такого завантаження потрібен проміжний об'єкт. Це може бути регістр загального призначення або стік. Якщо подивитися на лістинг примера1, то побачите на початку сегменту коду дві команди MOV, виконуючі настройку сегментного регістра DS. При цьому через неможливість напряму завантажити в сегментний завантаження потрібен проміжний об'єкт. Це може бути регістр загального призначення або стік. При цьому через неможливість напряму завантажити в сегментний регістр значення адреси сегменту, що міститься в приреченій змінній @data, доводиться використовувати регістр загального призначення АХ.
  •  Не можна переслати вміст одного сегментного регістра в інший сегментний регістр. Це пояснюється тим, що в системі команд немає відповідного коду операції. Але необхідність в такій дії часто виникає. Виконати таку пересилку можна, використовуючи як проміжні всі ті ж регістри загального призначення. Ось приклад ініціалізації регістра ES значенням з регістра DS:

mov  ах, ds

mov es, ах

  •  Не можна використовувати сегментний регістр CS як операнд призначення. Причина тут проста. Річ у тому, що в архітектурі процесора IA-32 пари CS:IP містить адресу команди, яка повинна виконуватися наступною. Зміна командою MOV вмісту регістра CS фактично означала б операцію переходу, а не пересилки, що неприпустимо.

     5.Директиви опису даних, цілі двійкові числа.

Ціле двійкове число — це число, закодоване в двійковій системі счислення. У архітектурі IA-32 розмірність цілого двійкового числа може складати 8, 16 або 32 біта.

Опис цілих двійкових чисел в програмі робиться з використанням директив опису даних DB, DW і DD.

DB   - тип даних байт;

DW  - тип даних слово;

DD   - тип даних подвійне слово;


 

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

17268. Облік готівкових операцій 39.5 KB
  Облік готівкових операцій Порядок ведення касових операцій в Україні регулюється Положенням про ведення касових операцій у національній валюті в Україні затвердженим постановою Правління НБУ від 15.12.2004 р. № 637. Порядок ведення касових операцій у національній валю...
17269. Облік безготівкових операцій 48.5 KB
  Облік безготівкових операцій Підприємства зберігають свої грошові кошти на поточних рахунках в банках України на договірних засадах. Розрахунки здійснюються у безготівковій або готівковій формах у порядку визначеному нормативними актами Національного банку України...
17270. Облік розрахунків з підзвітними особами 29.5 KB
  Облік розрахунків з підзвітними особами Облік розрахунків з підзвітними особами ведуть на рахунку 372 Розрахунки з підзвітними особами. Тут обліковують розрахунки з працівниками підприємства у сумах виданих їм під звіт на господарські потреби та на службові відряд...
17271. Організація оплати праці на підприємстві 29 KB
  Організація оплати праці на підприємстві. Економічні правові та організаційні засади оплати праці працівників які перебувають у трудових відносинах на підставі трудового договору з підприємствами установами та організаціями усіх форм власності та господарювання в
17272. Первинний облік праці та її оплати 26 KB
  Первинний облік праці та її оплати. Під час оформлення на роботу між працівником і підприємством укладають контракт трудовий договір. Зарахування на роботу оформляється Наказом розпорядженням про прийняття на роботу форма П1. На кожного працівника заводиться ...
17273. Облік розрахунків з оплати праці 39.5 KB
  Облік розрахунків з оплати праці. Облік розрахунків з оплати праці ведуть на рахунку 66 Розрахунки за виплатами працівникам у розрізі субрахунків 661 Розрахунки за заробітною платою 662 Розрахунки з депонентами. На кредиті рахунку відображають нараховану пр
17274. Облік виробничих витрат 40 KB
  Облік виробничих витрат Методологічні основи формування в бухгалтерському обліку інформації про витрати підприємств всіх форм власності регламентується ПСБО 16 Витрати. У відповідності до цього стандарту витратами визнається зменшення активів або збільшення зо...
17275. Облік незавершеного виробництва та зведений облік витрат і калькулювання собівартості продукції 25.5 KB
  Облік незавершеного виробництва та зведений облік витрат і калькулювання собівартості продукції До незавершеного виробництва відноситься продукція яка не пройшла всіх стадій обробки передбачених технологічним процесом а також вироби закінчені виробництвом але п
17276. Облік витрат підприємства, які не включаються у собівартість продукції 33 KB
  Облік витрат підприємства які не включаються у собівартість продукції. В процесі операційної діяльності у підприємства виникають витрати які не включаються у собівартість продукції. До них відносяться: адміністративні витрати; витрати на збут; інші операц...