🗊Презентация Структури. Описання шаблона структури

Нажмите для полного просмотра!
Структури. Описання шаблона структури, слайд №1Структури. Описання шаблона структури, слайд №2Структури. Описання шаблона структури, слайд №3Структури. Описання шаблона структури, слайд №4Структури. Описання шаблона структури, слайд №5Структури. Описання шаблона структури, слайд №6Структури. Описання шаблона структури, слайд №7Структури. Описання шаблона структури, слайд №8Структури. Описання шаблона структури, слайд №9Структури. Описання шаблона структури, слайд №10Структури. Описання шаблона структури, слайд №11Структури. Описання шаблона структури, слайд №12Структури. Описання шаблона структури, слайд №13Структури. Описання шаблона структури, слайд №14Структури. Описання шаблона структури, слайд №15Структури. Описання шаблона структури, слайд №16Структури. Описання шаблона структури, слайд №17Структури. Описання шаблона структури, слайд №18Структури. Описання шаблона структури, слайд №19Структури. Описання шаблона структури, слайд №20Структури. Описання шаблона структури, слайд №21Структури. Описання шаблона структури, слайд №22Структури. Описання шаблона структури, слайд №23Структури. Описання шаблона структури, слайд №24

Содержание

Вы можете ознакомиться и скачать презентацию на тему Структури. Описання шаблона структури. Доклад-сообщение содержит 24 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Лекція 8. Структури  

З метою підвищити зручність використання мови асемблер в нього також був введений такий тип даних, як структура. 
По визначенню структура — це тип даних, який складається з фіксованого числа елементів різного типу.
Описание слайда:
Лекція 8. Структури З метою підвищити зручність використання мови асемблер в нього також був введений такий тип даних, як структура. По визначенню структура — це тип даних, який складається з фіксованого числа елементів різного типу.

Слайд 2





Структури
Для використання структур у програмі необхідно виконати три дії: 
Задати шаблон структури. 
	За змістом це означає визначення нового типу даних, що згодом можна використовувати для визначення перемінних цього типу. 
Визничити шаблон структури. 
	Цей етап має на увазі ініціалізацію конкретної змінної заздалегідь визначеною (за допомогою шаблона) структурою. 
Організувати  звернення до елементів структури.
Описание слайда:
Структури Для використання структур у програмі необхідно виконати три дії: Задати шаблон структури. За змістом це означає визначення нового типу даних, що згодом можна використовувати для визначення перемінних цього типу. Визничити шаблон структури. Цей етап має на увазі ініціалізацію конкретної змінної заздалегідь визначеною (за допомогою шаблона) структурою. Організувати звернення до елементів структури.

Слайд 3





Структури
ОПИСАТИ СТРУКТУРУ в програмі означає лише вказати її схему чи шаблон - пам'ять при цьому не виділяється. 
Цей шаблон можна розглядати лише як інформацію для транслятора про розташування полів і їхні значення за замовчуванням. 

ВИЗНАЧИТИ СТРУКТУРУ — передбачає надавання вказівки транслятору виділити пам'ять і привласнити цій області пам'яті символічне ім'я. 
Описати структуру в програмі можна тільки один раз, а визначити — будь-яку кількість разів.
Описание слайда:
Структури ОПИСАТИ СТРУКТУРУ в програмі означає лише вказати її схему чи шаблон - пам'ять при цьому не виділяється. Цей шаблон можна розглядати лише як інформацію для транслятора про розташування полів і їхні значення за замовчуванням. ВИЗНАЧИТИ СТРУКТУРУ — передбачає надавання вказівки транслятору виділити пам'ять і привласнити цій області пам'яті символічне ім'я. Описати структуру в програмі можна тільки один раз, а визначити — будь-яку кількість разів.

Слайд 4





Описання шаблона структури 
Описання шаблона структури має наступний синтаксис: 
ім'я_структури		STRUC
	<описання полів>
ім'я_структури		ENDS
<описання полів> являє собою послідовність директив опису даних db, dw, dd, dq і dt. 
Їх операнди визначають розмір полів і, при необхідності, початкові значення. Цими значеннями можуть ініціалізуватися відповідні поля при визначенні структури.
Описание слайда:
Описання шаблона структури Описання шаблона структури має наступний синтаксис: ім'я_структури STRUC <описання полів> ім'я_структури ENDS <описання полів> являє собою послідовність директив опису даних db, dw, dd, dq і dt. Їх операнди визначають розмір полів і, при необхідності, початкові значення. Цими значеннями можуть ініціалізуватися відповідні поля при визначенні структури.

Слайд 5





Опис шаблона структури
Місце розташування шаблона в програмі може бути будь-яким, але за логікою роботи однопрохідного транслятора, воно повинно розташовуватись до того місця, де визначається змінна з типом даної структури. Тобто при описанні в сегменті даних змінної з типом деякої структури її шаблон необхідно помістити на початку сегменту даних або перед визначенням змінної даної структури.
Описание слайда:
Опис шаблона структури Місце розташування шаблона в програмі може бути будь-яким, але за логікою роботи однопрохідного транслятора, воно повинно розташовуватись до того місця, де визначається змінна з типом даної структури. Тобто при описанні в сегменті даних змінної з типом деякої структури її шаблон необхідно помістити на початку сегменту даних або перед визначенням змінної даної структури.

Слайд 6





Структури
Розглянемо роботу зі структурами на прикладі моделювання бази даних про співробітників деякого відділу. 
Для простоти, щоб вирішити проблему перетворення інформації при введенні, домовимося, що всі поля символьні. 
Визначимо структуру запису цієї бази даних наступним шаблоном:
Описание слайда:
Структури Розглянемо роботу зі структурами на прикладі моделювання бази даних про співробітників деякого відділу. Для простоти, щоб вирішити проблему перетворення інформації при введенні, домовимося, що всі поля символьні. Визначимо структуру запису цієї бази даних наступним шаблоном:

Слайд 7





Структури
worker	struc
;інформація про співробітника
nam	db	30	dup	(' ')	;прізвище, ім'я, по батькові
sex db	‘ч‘			;стать, за замовчуванням ‘ч'
position	db	30 dup (' ')	;посада
age	db	2 dup(‘ ’)		;вік
standing	db	2 dup(‘ ’)	;стаж
salary	db	4 dup(‘ ’)	;оклад у гривнях
birthdate	db	8 dup(‘ ’)	;дата народження
worker	ends
Описание слайда:
Структури worker struc ;інформація про співробітника nam db 30 dup (' ') ;прізвище, ім'я, по батькові sex db ‘ч‘ ;стать, за замовчуванням ‘ч' position db 30 dup (' ') ;посада age db 2 dup(‘ ’) ;вік standing db 2 dup(‘ ’) ;стаж salary db 4 dup(‘ ’) ;оклад у гривнях birthdate db 8 dup(‘ ’) ;дата народження worker ends

Слайд 8





Визначення даних з типом структури 
Для використання описаної за допомогою шаблона структури в програмі необхідно визначити змінну з типом даної структури. Для цього використовується наступна синтаксична конструкція: 
[ім'я змінної] ім'я_структури <[список значень]>
Описание слайда:
Визначення даних з типом структури Для використання описаної за допомогою шаблона структури в програмі необхідно визначити змінну з типом даної структури. Для цього використовується наступна синтаксична конструкція: [ім'я змінної] ім'я_структури <[список значень]>

Слайд 9





Визначення даних з типом структури
ім'я змінної — ідентифікатор перемінної даного структурного типу. 
Завдання імені змінної необов'язково. Якщо його не вказати, просто буде виділена область пам'яті розміром у суму довжин всіх елементів структури. 
список значень — взятий у кутові дужки список початкових значень елементів структури, розділених комами. (Його визначення також необов'язкове. Якщо список зазначений не цілком, то всі поля структури для даної змінної ініціалізуються значеннями із шаблона, якщо такі задані)
Описание слайда:
Визначення даних з типом структури ім'я змінної — ідентифікатор перемінної даного структурного типу. Завдання імені змінної необов'язково. Якщо його не вказати, просто буде виділена область пам'яті розміром у суму довжин всіх елементів структури. список значень — взятий у кутові дужки список початкових значень елементів структури, розділених комами. (Його визначення також необов'язкове. Якщо список зазначений не цілком, то всі поля структури для даної змінної ініціалізуються значеннями із шаблона, якщо такі задані)

Слайд 10





Визначення даних з типом структури
Допускається ініціалізація окремих полів, але в цьому випадку пропущені поля повинні відокремлюватися комами. Пропущені поля будуть ініціалізовані значеннями із шаблона структури. Якщо при визначенні нової змінної з типом даної структури ми згодні з усіма значеннями полів у її шаблоні (тобто заданими за замовчуванням), то потрібно просто написати кутові дужки. 
Наприклад: victor worker <>.
Описание слайда:
Визначення даних з типом структури Допускається ініціалізація окремих полів, але в цьому випадку пропущені поля повинні відокремлюватися комами. Пропущені поля будуть ініціалізовані значеннями із шаблона структури. Якщо при визначенні нової змінної з типом даної структури ми згодні з усіма значеннями полів у її шаблоні (тобто заданими за замовчуванням), то потрібно просто написати кутові дужки. Наприклад: victor worker <>.

Слайд 11





Як приклад визначимо декілька змінних з типом описаної вище структури. 
Як приклад визначимо декілька змінних з типом описаної вище структури. 
Data	segment
Sotr1	worker	<’Гурко Андрій Вячеславович’, ,’художник’,’33’,‘15’,‘1800’,’26.01.64’>
Sotr2	worker	<’Михайлова Наталя Генадієвна’,’ж',’програміст’,’30’,’10’,’1680’,’27.10.58’>
Sotr3	worker 	<’Степанов Юрій Лонгинович’,, ’художник’,’38’,’20’,’1750’,’01.01.58’>
Sotr4	worker	<’Юрова Олена Олександрівна’, ’ж', ’связист’,’32’,’2’,,’09.01.66’>
Sotr5	worker	<>	
;тут усі значення за замовчуванням
Data ends
Описание слайда:
Як приклад визначимо декілька змінних з типом описаної вище структури. Як приклад визначимо декілька змінних з типом описаної вище структури. Data segment Sotr1 worker <’Гурко Андрій Вячеславович’, ,’художник’,’33’,‘15’,‘1800’,’26.01.64’> Sotr2 worker <’Михайлова Наталя Генадієвна’,’ж',’програміст’,’30’,’10’,’1680’,’27.10.58’> Sotr3 worker <’Степанов Юрій Лонгинович’,, ’художник’,’38’,’20’,’1750’,’01.01.58’> Sotr4 worker <’Юрова Олена Олександрівна’, ’ж', ’связист’,’32’,’2’,,’09.01.66’> Sotr5 worker <> ;тут усі значення за замовчуванням Data ends

Слайд 12





Методи роботи зі структурою 
Ідея введення структурного типу в будь-яку мову програмування складається з об'єднання різнотипних змінних в один об'єкт. 
В мові повинні бути засоби доступу до цих змінних усередині конкретного екземпляра структури. Для того щоб послатися в команді на поле деякої структури, використовується спеціальний оператор — символ "." (крапка). Він використовується в наступній синтаксичній конструкції: 
Адресний_вираз.ім'я_поля_структури
Описание слайда:
Методи роботи зі структурою Ідея введення структурного типу в будь-яку мову програмування складається з об'єднання різнотипних змінних в один об'єкт. В мові повинні бути засоби доступу до цих змінних усередині конкретного екземпляра структури. Для того щоб послатися в команді на поле деякої структури, використовується спеціальний оператор — символ "." (крапка). Він використовується в наступній синтаксичній конструкції: Адресний_вираз.ім'я_поля_структури

Слайд 13





Методи роботи зі структурою 
адресний_вираз — ідентифікатор змінної деякого структурного типу чи вираз в дужках відповідно до зазначеного нижче синтаксичних правил (мал. 1); 
ім'я_поля_структури — ім'я поля із шаблона структури (це та ж адреса, а точніше, зсув поля від початку структури)
Описание слайда:
Методи роботи зі структурою адресний_вираз — ідентифікатор змінної деякого структурного типу чи вираз в дужках відповідно до зазначеного нижче синтаксичних правил (мал. 1); ім'я_поля_структури — ім'я поля із шаблона структури (це та ж адреса, а точніше, зсув поля від початку структури)

Слайд 14





Методи роботи зі структурою 
У такий спосіб оператор "." (крапка) обчислює вираження 
 (адресний_вираз)+(ім'я_поля_структури)
Описание слайда:
Методи роботи зі структурою У такий спосіб оператор "." (крапка) обчислює вираження (адресний_вираз)+(ім'я_поля_структури)

Слайд 15





Методи роботи зі структурою 
Продемонструємо на прикладі визначеної нами структури worker деякі прийоми роботи зі структурами. 
Наприклад, витягти в ax значення поля з віком. Тому що навряд чи вік працездатної людини буде більше величини 99 років, то після переміщення вмісту цього символьного поля в регістр ax його буде зручно перетворити в двійкове представлення командою aad.
Описание слайда:
Методи роботи зі структурою Продемонструємо на прикладі визначеної нами структури worker деякі прийоми роботи зі структурами. Наприклад, витягти в ax значення поля з віком. Тому що навряд чи вік працездатної людини буде більше величини 99 років, то після переміщення вмісту цього символьного поля в регістр ax його буде зручно перетворити в двійкове представлення командою aad.

Слайд 16





Методи роботи зі структурою 
Будьте уважні, тому що через принцип збереження даних “молодший байт за молодшою адресою” старша цифра віку буде поміщена в al, а молодша — у ah. 
Для коректування досить використовувати команду xchg al,ah: 
mov	ax,word ptr sotr1.age
;у al вік sotr1
xchg	ah,al
Описание слайда:
Методи роботи зі структурою Будьте уважні, тому що через принцип збереження даних “молодший байт за молодшою адресою” старша цифра віку буде поміщена в al, а молодша — у ah. Для коректування досить використовувати команду xchg al,ah: mov ax,word ptr sotr1.age ;у al вік sotr1 xchg ah,al

Слайд 17





Методи роботи зі структурою 
а можна і так:
lea	bx,sotr1	
mov	ax,word ptr [bx].age
xchg	ah,al
Описание слайда:
Методи роботи зі структурою а можна і так: lea bx,sotr1 mov ax,word ptr [bx].age xchg ah,al

Слайд 18





Методи роботи зі структурою 
Якщо співробітників не четверо, а набагато більше, і до того ж їхнє число й інформація про них постійно змінюється. У цьому випадку губиться зміст явного визначення змінних з типом worker для конкретних особистостей. 
Мова асемблера дозволяє визначати не тільки окрему змінну з типом структури, але і масив структур. 
Наприклад, визначимо масив з 10 структур типу worker: 
mas_sotr	worker	10 dup (<>)
Описание слайда:
Методи роботи зі структурою Якщо співробітників не четверо, а набагато більше, і до того ж їхнє число й інформація про них постійно змінюється. У цьому випадку губиться зміст явного визначення змінних з типом worker для конкретних особистостей. Мова асемблера дозволяє визначати не тільки окрему змінну з типом структури, але і масив структур. Наприклад, визначимо масив з 10 структур типу worker: mas_sotr worker 10 dup (<>)

Слайд 19





Методи роботи зі структурою 
Подальша робота з масивом структур виконуеться так само, як і з одномірним масивом. Як бути з розміром і як організувати індексацію елементів масиву? 
Аналогічно іншим ідентифікаторам, визначеним у програмі, транслятор призначає імені типу структури й імені змінної з типом структури атрибут типу. Значенням цього атрибута є розмір у байтах. Витягти це значення можна за допомогою оператора type. 
Після того як став відомий розмір екземпляра структури, організувати індексацію в масиві структур не представляє особливої складності.
Описание слайда:
Методи роботи зі структурою Подальша робота з масивом структур виконуеться так само, як і з одномірним масивом. Як бути з розміром і як організувати індексацію елементів масиву? Аналогічно іншим ідентифікаторам, визначеним у програмі, транслятор призначає імені типу структури й імені змінної з типом структури атрибут типу. Значенням цього атрибута є розмір у байтах. Витягти це значення можна за допомогою оператора type. Після того як став відомий розмір екземпляра структури, організувати індексацію в масиві структур не представляє особливої складності.

Слайд 20





Методи роботи зі структурою 
worker	struc
...
worker	ends
...
mas_sotr	worker	10 dup (<>)
...
mov	bx,type worker		;bx=77
lea	di,mas_sotr
;витягти і вивести на екран стать усіх співробітників:
mov	cx,10
cycl:
mov	al,[di].sex
... 
;виведення на екран умісту поля sex структури worker
add	di,bx	;до наступного структурі в масиві mas_sort
loop	cycl
Описание слайда:
Методи роботи зі структурою worker struc ... worker ends ... mas_sotr worker 10 dup (<>) ... mov bx,type worker ;bx=77 lea di,mas_sotr ;витягти і вивести на екран стать усіх співробітників: mov cx,10 cycl: mov al,[di].sex ... ;виведення на екран умісту поля sex структури worker add di,bx ;до наступного структурі в масиві mas_sort loop cycl

Слайд 21





Методи роботи зі структурою 
Як виконати копіювання поля з однієї структури у відповідне поле іншої структури? Чи як виконати копіювання всієї структури? Давайте виконаємо копіювання полючи nam третього співробітника в поле nam п'ятого співробітника:
Описание слайда:
Методи роботи зі структурою Як виконати копіювання поля з однієї структури у відповідне поле іншої структури? Чи як виконати копіювання всієї структури? Давайте виконаємо копіювання полючи nam третього співробітника в поле nam п'ятого співробітника:

Слайд 22





Методи роботи зі структурою 
worker	struc
...
worker	ends
...
mas_sotr	worker	10 dup (<>)
...
mov	bx,offset mas_sotr
mov	si,(type worker)*2	;si=77*2
add	si,bx
mov	di,(type worker)*4	;si=77*4
add	di,bx
mov	cx,30
rep	movsb
Описание слайда:
Методи роботи зі структурою worker struc ... worker ends ... mas_sotr worker 10 dup (<>) ... mov bx,offset mas_sotr mov si,(type worker)*2 ;si=77*2 add si,bx mov di,(type worker)*4 ;si=77*4 add di,bx mov cx,30 rep movsb

Слайд 23


Структури. Описання шаблона структури, слайд №23
Описание слайда:

Слайд 24


Структури. Описання шаблона структури, слайд №24
Описание слайда:



Похожие презентации
Mypresentation.ru
Загрузить презентацию