Добавил:
Eatmore
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
- 31 -
6. „ЁаҐЄвЁўл ®ЇаҐ¤Ґ«ҐЁп Ї ¬пвЁ.
„ЁаҐЄвЁўл ®ЇаҐ¤Ґ«ҐЁп Ї ¬пвЁ б«г¦ в ¤«п § ¤ Ёп
а §¬Ґа®ў, ᮤҐа¦Ё¬®Ј® Ё ¬Ґбв®Ї®«®¦ҐЁп Ї®«Ґ© ¤ л©,
ЁбЇ®«м§гҐ¬ле ў Їа®Ја ¬¬Ґ п§лЄҐ бᥬЎ«Ґа . ‚ ®в«ЁзЁҐ ®в
¤агЈЁе ¤ЁаҐЄвЁў п§лЄ бᥬЎ«Ґа ЇаЁ ®Ўа Ў®вЄҐ ¤ЁаҐЄвЁў
®ЇаҐ¤Ґ«ҐЁп Ї ¬пвЁ ЈҐҐаЁагҐвбп ®ЎкҐЄвл© Є®¤. MASM
ва б«ЁагҐв § ¤ ў Ґ¬лҐ ў ¤ЁаҐЄвЁў е ®ЇаҐ¤Ґ«ҐЁп Ї ¬пвЁ
зЁб« , бва®ЄЁ Ё ўла ¦ҐЁп ў ®в¤Ґ«млҐ ®Ўа §л Ў ©в®ў, б«®ў
Ё«Ё ¤агЈЁе Ґ¤ЁЁж ¤ ле. ќвЁ ®Ўа §л Є®ЇЁаговбп ў ®ЎкҐЄвл©
д ©«.
„ЁаҐЄвЁўл ®ЇаҐ¤Ґ«ҐЁп ¤ ле ¬®Јгв § ¤ ў вм:
1. ‘Є «палҐ ¤ лҐ, ЇаҐ¤бв ў«пойЁҐ б®Ў®© Ґ¤ЁЁз®Ґ § 票Ґ
Ё«Ё Ў®а Ґ¤ЁЁзле § 票©.
2. ‡ ЇЁбЁ, Ї®§ў®«пойЁҐ ¬ ЁЇг«Ёа®ў вм б ¤ л¬Ё га®ўҐ
ЎЁв.
3. ‘вагЄвгал, ®ва ¦ ойЁҐ ҐЄ®в®аго «®ЈЁзҐбЄго бвагЄвгаг
¤ ле.
„ЁаҐЄвЁўл ®ЇаҐ¤Ґ«ҐЁп нвЁе вЁЇ®ў ¤ ле ®ЇЁб л ў
б«Ґ¤гойЁе 3-е а §¤Ґ« е.
6.1. ‘Є «палҐ ¤ ле.
„ЁаҐЄвЁўл ®ЇаҐ¤Ґ«ҐЁп бЄ «пале ¤ ле ЇаЁўҐ¤Ґл ў
в Ў«ЁжҐ 6.1.
- 32 -
’ Ў«Ёж 6.1. „ЁаҐЄвЁўл ®ЇаҐ¤Ґ«ҐЁп бЄ «пале ¤ ле.
________________________________________________________
| | |
| д®а¬ в | дгЄжЁп |
|__________________________|___________________________|
| | |
| [[Ё¬п]] DB § 票Ґ,... | ®ЇаҐ¤Ґ«ҐЁҐ Ў ©в®ў |
|__________________________|___________________________|
| | |
| [[Ё¬п]] DW § 票Ґ,... | ®ЇаҐ¤Ґ«ҐЁҐ б«®ў |
|__________________________|___________________________|
| | |
| [[Ё¬п]] DD § 票Ґ,... | ®ЇаҐ¤Ґ«ҐЁҐ ¤ў®©ле б«®ў |
|__________________________|___________________________|
| | |
| [[Ё¬п]] DQ § 票Ґ,... | ®ЇаҐ¤Ґ«ҐЁҐ Єў ¤а®-б«®ў |
|__________________________|___________________________|
| | |
| [[Ё¬п]] DT § 票Ґ,... | ®ЇаҐ¤Ґ«ҐЁҐ 10 Ў ©в®ў |
|__________________________|___________________________|
„ЁаҐЄвЁў DB ®ЎҐбЇҐзЁў Ґв а бЇаҐ¤Ґ«ҐЁҐ Ё
ЁЁжЁ «Ё§ жЁо 1 Ў ©в Ї ¬пвЁ ¤«п Є ¦¤®Ј® Ё§ гЄ § ле
§ 票©. ‚ Є зҐб⢥ § зҐЁп ¬®¦Ґв Є®¤Ёа®ў вмбп 楫®Ґ
зЁб«®, бва®Є®ў п Є®бв в , ®ЇҐа в®а DUP (б¬. Ё¦Ґ),
Ўб®«о⮥ ўла ¦ҐЁҐ Ё«Ё § Є ?. ‡ Є ? ®Ў®§ з Ґв
Ґ®ЇаҐ¤Ґ«Ґ®Ґ § 票Ґ. ‡ 票п, Ґб«Ё Ёе ҐбЄ®«мЄ®, ¤®«¦л
а §¤Ґ«пвмбп § Їпвл¬Ё.
…б«Ё ¤ЁаҐЄвЁў Ё¬ҐҐв Ё¬п, ᮧ¤ Ґвбп ЇҐаҐ¬Ґ п вЁЇ
BYTE б ᮮ⢥вбвўгойЁ¬ ¤ ®¬г § 票о гЄ § вҐ«п Ї®§ЁжЁЁ
ᬥ饨Ґ¬.
‘ва®Є®ў п Є®бв в ¬®¦Ґв ᮤҐа¦ вм бв®«мЄ® бЁ¬ў®«®ў,
бЄ®«мЄ® Ї®¬Ґй Ґвбп ®¤®© бва®ЄҐ. ‘Ё¬ў®«л бва®ЄЁ еа пвбп
ў Ї ¬пвЁ ў Ї®ап¤ЄҐ Ёе б«Ґ¤®ў Ёп, в.Ґ. 1-© бЁ¬ў®« Ё¬ҐҐв
б ¬л© ¬« ¤иЁ© ¤аҐб, Ї®б«Ґ¤Ё© - б ¬л© бв аиЁ©.
„ЁаҐЄвЁў DW ®ЎҐбЇҐзЁў Ґв а бЇаҐ¤Ґ«ҐЁҐ Ё
ЁЁжЁ «Ё§ жЁо б«®ў Ї ¬пвЁ (2 Ў ©в ) ¤«п Є ¦¤®Ј® Ё§
гЄ § ле § 票©. ‚ Є зҐб⢥ § зҐЁп ¬®¦Ґв Є®¤Ёа®ў вмбп
楫®Ґ зЁб«®, 1- Ё«Ё 2-е бЁ¬ў®«м п Є®бв в , ®ЇҐа в®а DUP
(б¬. Ё¦Ґ), Ўб®«о⮥ ўла ¦ҐЁҐ, ¤аҐб®Ґ ўла ¦ҐЁҐ Ё«Ё
§ Є ?. ‡ Є ? ®Ў®§ з Ґв Ґ®ЇаҐ¤Ґ«Ґ®Ґ § 票Ґ. ‡ 票п,
Ґб«Ё Ёе ҐбЄ®«мЄ®, ¤®«¦л а §¤Ґ«пвмбп § Їпвл¬Ё.
…б«Ё ¤ЁаҐЄвЁў Ё¬ҐҐв Ё¬п, ᮧ¤ Ґвбп ЇҐаҐ¬Ґ п вЁЇ
WORD б ᮮ⢥вбвўгойЁ¬ ¤ ®¬г § 票о гЄ § вҐ«п Ї®§ЁжЁЁ
ᬥ饨Ґ¬.
‘ва®Є®ў п Є®бв в Ґ ¬®¦Ґв ᮤҐа¦ вм Ў®«ҐҐ 2-е
бЁ¬ў®«®ў. Џ®б«Ґ¤Ё© (Ё«Ё Ґ¤Ёб⢥л©) бЁ¬ў®« бва®ЄЁ
еа Ёвбп ў ¬« ¤иҐ¬ Ў ©вҐ б«®ў . ‘в аиЁ© Ў ©в ᮤҐа¦Ёв ЇҐаўл©
бЁ¬ў®« Ё«Ё, Ґб«Ё бва®Є ®¤®бЁ¬ў®«м п, 0.
„ЁаҐЄвЁў DD ®ЎҐбЇҐзЁў Ґв а бЇаҐ¤Ґ«ҐЁҐ Ё
ЁЁжЁ «Ё§ жЁо ¤ў®©®Ј® б«®ў Ї ¬пвЁ (4 Ў ©в ) ¤«п Є ¦¤®Ј® Ё§
- 33 -
гЄ § ле § 票©. ‚ Є зҐб⢥ § зҐЁп ¬®¦Ґв Є®¤Ёа®ў вмбп
楫®Ґ зЁб«®, 1- Ё«Ё 2-е бЁ¬ў®«м п Є®бв в , ¤Ґ©б⢨⥫쮥
зЁб«®, Є®¤Ёа®ў ®Ґ ¤Ґ©б⢨⥫쮥 зЁб«®, ®ЇҐа в®а DUP (б¬.
Ё¦Ґ), Ўб®«о⮥ ўла ¦ҐЁҐ, ¤аҐб®Ґ ўла ¦ҐЁҐ Ё«Ё § Є ?.
‡ Є ? ®Ў®§ з Ґв Ґ®ЇаҐ¤Ґ«Ґ®Ґ § 票Ґ. ‡ 票п, Ґб«Ё Ёе
ҐбЄ®«мЄ®, ¤®«¦л а §¤Ґ«пвмбп § Їпвл¬Ё.
…б«Ё ¤ЁаҐЄвЁў Ё¬ҐҐв Ё¬п, ᮧ¤ Ґвбп ЇҐаҐ¬Ґ п вЁЇ
DWORD б ᮮ⢥вбвўгойЁ¬ ¤ ®¬г § 票о гЄ § вҐ«п Ї®§ЁжЁЁ
ᬥ饨Ґ¬.
‘ва®Є®ў п Є®бв в Ґ ¬®¦Ґв ᮤҐа¦ вм Ў®«ҐҐ 2-е
бЁ¬ў®«®ў. Џ®б«Ґ¤Ё© (Ё«Ё Ґ¤Ёб⢥л©) бЁ¬ў®« бва®ЄЁ
еа Ёвбп ў ¬« ¤иҐ¬ Ў ©вҐ б«®ў . ‚в®а®© Ў ©в ᮤҐа¦Ёв ЇҐаўл©
бЁ¬ў®« Ё«Ё, Ґб«Ё бва®Є ®¤®бЁ¬ў®«м п, 0. Ћбв «млҐ Ў ©вл
§ Ї®«повбп г«п¬Ё.
„ЁаҐЄвЁў DQ ®ЎҐбЇҐзЁў Ґв а бЇаҐ¤Ґ«ҐЁҐ Ё
ЁЁжЁ «Ё§ жЁо 8 Ў ©в®ў Ї ¬пвЁ ¤«п Є ¦¤®Ј® Ё§ гЄ § ле
§ 票©. ‚ Є зҐб⢥ § зҐЁп ¬®¦Ґв Є®¤Ёа®ў вмбп 楫®Ґ
зЁб«®, 1- Ё«Ё 2-е бЁ¬ў®«м п Є®бв в , ¤Ґ©б⢨⥫쮥
зЁб«®, Є®¤Ёа®ў ®Ґ ¤Ґ©б⢨⥫쮥 зЁб«®, ®ЇҐа в®а DUP (б¬.
Ё¦Ґ), Ўб®«о⮥ ўла ¦ҐЁҐ, ¤аҐб®Ґ ўла ¦ҐЁҐ Ё«Ё § Є ?.
‡ Є ? ®Ў®§ з Ґв Ґ®ЇаҐ¤Ґ«Ґ®Ґ § 票Ґ. ‡ 票п, Ґб«Ё Ёе
ҐбЄ®«мЄ®, ¤®«¦л а §¤Ґ«пвмбп § Їпвл¬Ё.
…б«Ё ¤ЁаҐЄвЁў Ё¬ҐҐв Ё¬п, ᮧ¤ Ґвбп ЇҐаҐ¬Ґ п вЁЇ
QWORD б ᮮ⢥вбвўгойЁ¬ ¤ ®¬г § 票о гЄ § вҐ«п Ї®§ЁжЁЁ
ᬥ饨Ґ¬.
‘ва®Є®ў п Є®бв в Ґ ¬®¦Ґв ᮤҐа¦ вм Ў®«ҐҐ 2-е
бЁ¬ў®«®ў. Џ®б«Ґ¤Ё© (Ё«Ё Ґ¤Ёб⢥л©) бЁ¬ў®« бва®ЄЁ
еа Ёвбп ў ¬« ¤иҐ¬ Ў ©вҐ б«®ў . ‚в®а®© Ў ©в ᮤҐа¦Ёв ЇҐаўл©
бЁ¬ў®« Ё«Ё, Ґб«Ё бва®Є ®¤®бЁ¬ў®«м п, 0. Ћбв «млҐ Ў ©вл
§ Ї®«повбп г«п¬Ё.
„ЁаҐЄвЁў DT ®ЎҐбЇҐзЁў Ґв а бЇаҐ¤Ґ«ҐЁҐ Ё
ЁЁжЁ «Ё§ жЁо 10 Ў ©в®ў Ї ¬пвЁ ¤«п Є ¦¤®Ј® Ё§ гЄ § ле
§ 票©. ‚ Є зҐб⢥ § зҐЁп ¬®¦Ґв Є®¤Ёа®ў вмбп 楫®Ґ
ўла ¦ҐЁҐ, гЇ Є®ў ®Ґ ¤ҐбпвЁз®Ґ зЁб«®, 1- Ё«Ё 2-е
бЁ¬ў®«м п Є®бв в , Є®¤Ёа®ў ®Ґ ¤Ґ©б⢨⥫쮥 зЁб«®,
®ЇҐа в®а DUP (б¬. Ё¦Ґ) Ё«Ё § Є ?. ‡ Є ? ®Ў®§ з Ґв
Ґ®ЇаҐ¤Ґ«Ґ®Ґ § 票Ґ. ‡ 票п, Ґб«Ё Ёе ҐбЄ®«мЄ®, ¤®«¦л
а §¤Ґ«пвмбп § Їпвл¬Ё.
…б«Ё ¤ЁаҐЄвЁў Ё¬ҐҐв Ё¬п, ᮧ¤ Ґвбп ЇҐаҐ¬Ґ п вЁЇ
TWORD б ᮮ⢥вбвўгойЁ¬ ¤ ®¬г § 票о гЄ § вҐ«п Ї®§ЁжЁЁ
ᬥ饨Ґ¬.
‘ва®Є®ў п Є®бв в Ґ ¬®¦Ґв ᮤҐа¦ вм Ў®«ҐҐ 2-е
бЁ¬ў®«®ў. Џ®б«Ґ¤Ё© (Ё«Ё Ґ¤Ёб⢥л©) бЁ¬ў®« бва®ЄЁ
еа Ёвбп ў ¬« ¤иҐ¬ Ў ©вҐ б«®ў . ‚в®а®© Ў ©в ᮤҐа¦Ёв ЇҐаўл©
бЁ¬ў®« Ё«Ё, Ґб«Ё бва®Є ®¤®бЁ¬ў®«м п, 0. Ћбв «млҐ Ў ©вл
§ Ї®«повбп г«п¬Ё.
ЏаЁ ®Ўа Ў®вЄҐ ¤ЁаҐЄвЁўл DT Ї®¤а §г¬Ґў Ґвбп, зв®
Є®бв вл, ᮤҐа¦ йЁҐ ¤ҐбпвЁзлҐ жЁдал, ЇаҐ¤бв ў«пов б®Ў®©
Ґ 楫лҐ, ¤ҐбпвЁзлҐ гЇ Є®ў лҐ зЁб« . ‚ б«гз Ґ
Ґ®Ўе®¤Ё¬®бвЁ ®ЇаҐ¤Ґ«Ёвм 10-Ў ©в®ў®Ґ 楫®Ґ зЁб«® б«Ґ¤гҐв
Ї®б«Ґ зЁб« гЄ § вм бЇҐжЁдЁЄ в®а бЁб⥬л бзЁб«ҐЁп (D Ё«Ё d
¤«п ¤ҐбпвЁзле зЁбҐ«, H Ё«Ё h ¤«п 16-аЁзле Ё в.¤.).
- 34 -
…б«Ё ў ®¤®© ¤ЁаҐЄвЁўҐ ®ЇаҐ¤Ґ«ҐЁп Ї ¬пвЁ § ¤ л
ҐбЄ®«мЄ® § 票©, Ё¬ а бЇаҐ¤Ґ«повбп Ї®б«Ґ¤®ў ⥫млҐ Ў ©вл
Ї ¬пвЁ.
‚® ўбҐе ¤ЁаҐЄвЁў е ®ЇаҐ¤Ґ«ҐЁп Ї ¬пвЁ ў Є зҐб⢥
®¤®Ј® Ё§ § 票© ¬®¦Ґв Ўлвм § ¤ ®ЇҐа в®а DUP. Ћ Ё¬ҐҐв
б«Ґ¤гойЁ© д®а¬ в:
бзҐвзЁЄ DUP (§ 票Ґ,...)
“Є § л© ў бЄ®ЎЄ е () бЇЁб®Є § 票© Ї®ўв®апҐвбп
¬®Ј®Єа в® ў ᮮ⢥вбвўЁЁ §® § 票Ґ¬ бзҐвзЁЄ . Љ ¦¤®Ґ
§ 票Ґ ў бЄ®ЎЄ е ¬®¦Ґв Ўлвм «оЎл¬ ўла ¦ҐЁҐ¬, Ё¬ҐойЁ¬
§ 票Ґ¬ 楫®Ґ зЁб«®, бЁ¬ў®«мго Є®бв вг Ё«Ё ¤агЈ®©
®ЇҐа в®а DUP (¤®ЇгбЄ Ґвбп ¤® 17 га®ўҐ© ў«®¦Ґ®бвЁ
®ЇҐа в®а®ў DUP). ‡ 票п, Ґб«Ё Ёе ҐбЄ®«мЄ®, ¤®«¦л
а §¤Ґ«пвмбп § Їпвл¬Ё.
ЋЇҐа в®а DUP ¬®¦Ґв ЁбЇ®«м§®ў вмбп Ґ в®«мЄ® ЇаЁ
®ЇаҐ¤Ґ«ҐЁЁ Ї ¬пвЁ, ® Ё ў ¤агЈЁе ¤ЁаҐЄвЁў е.
ЏаЁ¬Ґал ¤ЁаҐЄвЁў ®ЇаҐ¤Ґ«ҐЁп бЄ «пале ¤ ле:
integer1 DB 16
string1 DB 'abCDf'
empty1 DB ?
integer2 DW 16728
contan2 DW 4*3
multip2 DW 1,'$'
arr2 DW array
string3 DD 'ab'
real3 DD 1.5
encode3 DD 3F000000r
high3 DD 4294967295
char4 DQ 'b'
encode4 DQ 3F00000000000000r
high4 DQ 18446744073709551615
pack5 DT 1234567890
real5 DT 1.5
mult5 DT 'a',3F000000000000000000r
high5 DT 1208925819614629174706175d
db6 DB 5 DUP(5 DUP(5 DUP(10)))
dw6 DW DUP(1,2,3,4,5)
6.2. ‡ ЇЁбЁ.
‡ ЇЁбм ЇаҐ¤бв ў«пҐв б®Ў®© Ў®а Ї®«Ґ© ЎЁв,
®ЎкҐ¤ЁҐле ®¤Ё¬ Ё¬ҐҐ¬. Љ ¦¤®Ґ Ї®«Ґ § ЇЁбЁ Ё¬ҐҐв
- 35 -
б®Ўб⢥го ¤«Ёг, ЁбзЁб«пҐ¬го ў ЎЁв е, Ё Ґ ®Ўп§
§ Ё¬ вм 楫®Ґ зЁб«® Ў ©в®ў.
ЋЎкпў«ҐЁҐ § ЇЁбЁ ў Їа®Ја ¬¬Ґ п§лЄҐ бᥬЎ«Ґа
ўЄ«оз Ґв ў ᥡп 2 ¤Ґ©бвўЁп:
1. ЋЎкпў«ҐЁҐ и Ў«® Ё«Ё вЁЇ § ЇЁбЁ ¤ЁаҐЄвЁў®©
RECORD.
2. ЋЎкпў«ҐЁҐ б®Ўб⢥® § ЇЁбЁ.
”®а¬ в ¤ЁаҐЄвЁўл RECORD:
Ё¬п-§ ЇЁбЁ RECORD Ё¬п-Ї®«п:¤«Ё [[=ўла ¦ҐЁҐ]],...
„ЁаҐЄвЁў RECORD ®ЇаҐ¤Ґ«пҐв ўЁ¤ 8- Ё«Ё 16-ЎЁв®ў®©
§ ЇЁбЁ, ᮤҐа¦ 饩 ®¤® Ё«Ё ҐбЄ®«мЄ® Ї®«Ґ©. €¬п-§ ЇЁбЁ
ЇаҐ¤бв ў«пҐв б®Ў®© Ё¬п вЁЇ § ЇЁбЁ, Є®в®а®Ґ Ўг¤Ґв
ЁбЇ®«м§®ў вмбп ЇаЁ ®Ўкпў«ҐЁЁ § ЇЁбЁ. €¬п-Ї®«п Ё ¤«Ё (ў
ЎЁв е) ®ЇЁблў ов Є®ЄаҐв®Ґ Ї®«Ґ § ЇЁбЁ. ‚ла ¦ҐЁҐ, Ґб«Ё ®®
гЄ § ® § ¤ Ґв з «м®Ґ (г¬ «зЁў Ґ¬®Ґ) § 票Ґ Ї®«п.
ЋЇЁб Ёп Ї®«Ґ© § ЇЁбЁ ў ¤ЁаҐЄвЁўҐ RECORD, Ґб«Ё Ёе
ҐбЄ®«мЄ®, ¤®«¦л а §¤Ґ«пвмбп § Їпвл¬Ё. „«п ®¤®© § ЇЁбЁ
¬®¦Ґв Ўлвм § ¤ ® «оЎ®Ґ зЁб«® Ї®«Ґ©, ® Ёе б㬬 а п ¤«Ё
Ґ ¤®«¦ ЇаҐўли вм 16 ЎЁв.
„«Ё Є ¦¤®Ј® Ї®«п § ¤ Ґвбп Є®бв в®© ў ЇаҐ¤Ґ« е ®в 1
¤® 16. …б«Ё ®Ўй п ¤«Ё Ї®«Ґ© ЇаҐўли Ґв 8 ЎЁв, бᥬЎ«Ґа
ўл¤Ґ«пҐв Ї®¤ § ЇЁбм 2 Ў ©в , ў Їа®вЁў®¬ б«гз Ґ - 1 Ў ©в.
…б«Ё § ¤ ® ўла ¦ҐЁҐ, ®® ®ЇаҐ¤Ґ«пҐв з «м®Ґ
§ 票Ґ Ї®«п. …б«Ё ¤«Ё Ї®«п Ґ ¬ҐмиҐ 7 ЎЁв, ў Є зҐб⢥
ўла ¦ҐЁп ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў бЁ¬ў®« ў Є®¤Ґ ASCII.
‚ла ¦ҐЁҐ Ґ ¤®«¦® ᮤҐа¦ вм ббл«®Є ўЇҐаҐ¤.
‚гваЁ § ЇЁбЁ Ї®«п а §¬Ґй овбп б«Ґў Їа ў® ў Ї®ап¤ЄҐ
®ЇЁб Ёп ў ¤ЁаҐЄвЁўҐ RECORD. Џ®н⮬㠮Ўкпў«Ґ®Ґ ЇҐаўл¬ Ї®«Ґ
ᮤҐа¦Ёв б ¬лҐ § зЁ¬лҐ ЎЁвл § ЇЁбЁ, Ґб«Ё а бб¬ ваЁў вм ҐҐ
Є Є ¤ў®Ёз®Ґ зЁб«®. …б«Ё б㬬 а п ¤«Ё Ї®«Ґ© Ґ а ў 8
Ё«Ё 16, § ЇЁбм а биЁапҐвбп ¤® 楫®© Ја Ёжл Ў ©в г«Ґўл¬Ё
ЎЁв ¬Ё б«Ґў , Ё, в ЄЁ¬ ®Ўа §®¬, Ї®б«Ґ¤Ё© ЎЁв Ї®б«Ґ¤ҐЈ®
Ї®«п ўбҐЈ¤ пў«пҐвбп б ¬л¬ ¬« ¤иЁ¬ ЎЁв®¬ § ЇЁбЁ.
ЏаЁ¬Ґа:
item RECORD char:7='Q',weight:4=2
‡ ЇЁбм item Ўг¤Ґв Ё¬Ґвм б«Ґ¤гойЁ© ўЁ¤:
char weight
___________ _____
| | | |
0 0 0 0 0 1 0 1 0 0 0 1 0 0 1 0
ЏаЁ ®Ўа Ў®вЄҐ ¤ЁаҐЄвЁўл RECORD д®а¬ЁагҐвбп и Ў«®
§ ЇЁбЁ, б ¬Ё ¤ лҐ б®§¤ овбп ЇаЁ ®Ўкпў«ҐЁЁ § ЇЁбЁ,
Є®в®а®Ґ Ё¬ҐҐв б«Ґ¤гойЁ© ўЁ¤:
- 36 -
[[Ё¬п]] Ё¬п-§ ЇЁбЁ <[[§ 票Ґ,...]]>
Џ® в Є®¬г ®Ўкпў«ҐЁо ᮧ¤ Ґвбп ЇҐаҐ¬Ґ п вЁЇ § ЇЁбЁ
б 8- Ё«Ё 16-ЎЁв®ўл¬ § 票Ґ¬ Ё бвагЄвга®© Ї®«Ґ©,
ᮮ⢥вбвўго饩 и Ў«®г, § ¤ ®¬г ¤ЁаҐЄвЁў®© RECORD б
Ё¬ҐҐ¬ Ё¬п-§ ЇЁбЁ.
€¬п § ¤ Ґв Ё¬п ЇҐаҐ¬Ґ®© вЁЇ § ЇЁбЁ. …б«Ё Ё¬п
®Їг饮, MASM а бЇаҐ¤Ґ«пҐв Ї ¬пвм, ® Ґ ᮧ¤ Ґв ЇҐаҐ¬Ґго,
Є®в®аго ¬®¦® Ўл«® Ўл ЁбЇ®«м§®ў вм ¤«п ¤®бвгЇ Є § ЇЁбЁ.
‚ бЄ®ЎЄ е <> гЄ §лў Ґвбп бЇЁб®Є § 票© Ї®«Ґ© § ЇЁбЁ.
‡ зҐЁп ў бЇЁбЄҐ, Ґб«Ё Ёе ҐбЄ®«мЄ®, ¤®«¦л а §¤Ґ«пвмбп
§ Їпвл¬Ё. Љ ¦¤®Ґ § 票Ґ ¬®¦Ґв Ўлвм жҐ«л¬ зЁб«®¬, бва®Є®ў®©
Є®бв в®© Ё«Ё ўла ¦ҐЁҐ¬ Ё ¤®«¦® ᮮ⢥вбвў®ў вм ¤«ЁҐ
¤ ®Ј® Ї®«п. „«п Є ¦¤®Ј® Ї®«п ¬®¦Ґв Ўлвм § ¤ ® ®¤®
§ 票Ґ.
‘Є®ЎЄЁ <> ®Ўп§ ⥫мл, ¤ ¦Ґ Ґб«Ё з «млҐ § зҐЁп Ґ
§ ¤ л.
…б«Ё ў Є зҐб⢥ § зҐЁп ЁбЇ®«м§гҐвбп ®ЇҐа в®а DUP
(Ї.6.1), ў бЄ®ЎЄЁ <> б«Ґ¤гҐв § Є«оз вм бЇЁб®Є § 票©
®ЇҐа в®а DUP. ‘«Ґ¤гҐв Ё¬Ґвм ўўЁ¤г, зв® ЇаЁ ЁбЇ®«м§®ў ЁЁ
®ЇҐа в®а DUP ᮧ¤ Ґвбп ҐбЄ®«мЄ® ЇҐаҐ¬Ґле вЁЇ § ЇЁбм.
‡ ¤ ў вм § зҐЁп ўбҐе Ї®«Ґ© § ЇЁбЁ Ґ®Ўп§ ⥫м®.
…б«Ё бᥬЎ«Ґа ў¬Ґбв® § зҐЁп ®Ў аг¦Ёв «Ґўл© Їа®ЎҐ«, Ўг¤Ґв
ЁбЇ®«м§®ў ® з «м®Ґ § 票Ґ Ї®«п, § ¤ ®Ґ ¤ЁаҐЄвЁў®©
RECORD, Ґб«Ё ®® Ё в ¬ ®Їг饮, § 票Ґ Ї®«п Ўг¤Ґв
Ґ®ЇаҐ¤Ґ«Ґ®.
ЏаЁ¬Ґа:
table item 10 DUP(<'A',2>)
…б«Ё ¤«п ®ЇЁб Ёп и Ў«® § ЇЁбЁ ЁбЇ®«м§®ў « бм
¤ЁаҐЄвЁў RECORD Ё§ ЇаҐ¤л¤г饣® ЇаЁ¬Ґа , Ї® н⮬㠮Ўкпў«ҐЁо
ᮧ¤ Ґвбп 10 § ЇЁбҐ©, ®ЎкҐ¤ЁҐле Ё¬ҐҐ¬ table. Љ ¦¤ п
§ ЇЁбм Ўг¤Ґв Ё¬Ґвм б«Ґ¤гойЁ© ўЁ¤:
char weight
___________ _____
| | | |
0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0
6.3. ‘вагЄвгал.
‘вагЄвга ЇаҐ¤бв ў«пҐв б®Ў®© Ў®а Ї®«Ґ© Ў ©в®ў,
®ЎкҐ¤ЁҐле ®¤Ё¬ Ё¬ҐҐ¬.
ЋЎкпў«ҐЁҐ бвагЄвгал ў Їа®Ја ¬¬Ґ п§лЄҐ бᥬЎ«Ґа
ўЄ«оз Ґв ў ᥡп 2 ¤Ґ©бвўЁп:
- 37 -
1. ЋЎкпў«ҐЁҐ и Ў«® Ё«Ё вЁЇ бвагЄвгал ¤ЁаҐЄвЁў ¬Ё
STRUC Ё ENDS.
2. ЋЎкпў«ҐЁҐ б®Ўб⢥® бвагЄвгал.
”®а¬ в ®Ўкпў«ҐЁп вЁЇ бвагЄвгал:
Ё¬п STRUC
®ЇЁб Ёп-Ї®«Ґ©
Ё¬п ENDS
„ЁаҐЄвЁўл STRUC Ё ENDS ®Ў®§ з ов ᮮ⢥вб⢥®
з «® Ё Є®Ґж ®ЇЁб Ёп и Ў«® (вЁЇ ) бвагЄвгал. ЋЇЁб ЁҐ
вЁЇ бвагЄвгал § ¤ Ґв Ё¬п вЁЇ бвагЄвгал Ё зЁб«®, вЁЇл Ё
з «млҐ § зҐЁп Ї®«Ґ© бвагЄвгал.
“Є § ®Ґ ў ¤ЁаҐЄвЁў е STRUC Ё ENDS Ё¬п § ¤ Ґв ®ў®Ґ
Ё¬п вЁЇ бвагЄвгал. Ћ® ¤®«¦® Ўлвм гЁЄ «мл¬.
ЋЇЁб Ёп-Ї®«Ґ© ®ЇаҐ¤Ґ«пов Ї®«п бвагЄвгал Ё ¬®Јгв Ўлвм § ¤ л
ў ®¤®© Ё§ б«Ґ¤гойЁе д®а¬:
[[Ё¬п]] DB § 票Ґ,...
[[Ё¬п]] DW § 票Ґ,...
[[Ё¬п]] DD § 票Ґ,...
[[Ё¬п]] DQ § 票Ґ,...
[[Ё¬п]] DT § 票Ґ,...
Љ ¦¤®Ґ Ї®«Ґ ¬®¦Ґв Ё¬Ґвм бў®Ґ Ё¬п. „ЁаҐЄвЁўл DB, DW,
DD, DQ Ё«Ё DT § ¤ ов ¤«Ёг Ї®«п. „«п Є ¦¤®Ј® Ї®«п ¬®Јгв Ўлвм
гЄ § л з «млҐ § 票п, Є®в®ал¬Ё ЁЁжЁ «Ё§Ёаговбп Ї®«п
ЇаЁ ®вбгвбвўЁЁ ᮮ⢥вбвўгойЁе з «мле § 票©
ЇаЁ ®Ўкпў«ҐЁЁ бвагЄвгал. €¬п Є ¦¤®© ¤ЁаҐЄвЁўл, Ґб«Ё ®®
§ ¤ ®, ¤®«¦® Ўлвм гЁЄ «мл¬ Ё ЇаҐ¤бв ў«пҐв ᬥ饨Ґ
Ї®«п ®в®бЁвҐ«м® з « бвагЄвгал.
‡ 票Ґ¬ Ї®«п ¬®¦Ґв Ўлвм зЁб«®, бЁ¬ў®«, бва®Є®ў п
Є®бв в Ё«Ё Ё¬п ¤агЈ®Ј® ®ЎкҐЄв . „«п ®ЇаҐ¤Ґ«ҐЁп ¬®¦Ґбвў
§ 票© Ї®«п ¬®¦Ґв ЁбЇ®«м§®ў вмбп ®ЇҐа в®а DUP. …б«Ё ў
Є зҐб⢥ § зҐЁп § ¤ бва®Є®ў п Є®бв в , Ї®«Ґ § Ё¬ Ґв
бв®«мЄ® Ў ©в®ў, бЄ®«мЄ® бЁ¬ў®«®ў ў Є®бв вҐ. …б«Ё § ¤ ®
ҐбЄ®«мЄ® § 票©, ®Ё ¤®«¦л а §¤Ґ«пвмбп § Їпвл¬Ё.
ЋЎкпў«ҐЁҐ вЁЇ бвагЄвгал ¬®¦Ґв ᮤҐа¦ вм в®«мЄ®
®ЇЁб Ёп Ї®«Ґ© Ё Є®¬¬Ґв аЁЁ. Џ® нв®© ЇаЁзЁҐ бвагЄвгал Ґ
¬®Јгв Ўлвм ў«®¦Ґл¬Ё.
ЏаЁ¬Ґа:
table STRUC
count DB 10
value DW 10 DUP(?)
tname DB 'font'
table ENDS
ЏаЁ ®Ўа Ў®вЄҐ ¤ЁаҐЄвЁў STRUC Ё ENDS д®а¬ЁагҐвбп и Ў«®
бвагЄвгал, б ¬Ё ¤ лҐ б®§¤ овбп ЇаЁ ®Ўкпў«ҐЁЁ бвагЄвгал,
Є®в®а®Ґ Ё¬ҐҐв б«Ґ¤гойЁ© ўЁ¤:
- 38 -
[[Ё¬п]] Ё¬п-бвагЄвгал <[[§ 票Ґ,...]]>
Џ® в Є®¬г ®Ўкпў«ҐЁо ᮧ¤ Ґвбп ЇҐаҐ¬Ґ п вЁЇ
бвагЄвга б® бвагЄвга®© Ї®«Ґ©, ᮮ⢥вбвўго饩 и Ў«®г,
§ ¤ ®¬г ¤ЁаҐЄвЁў®© STRUC б Ё¬ҐҐ¬ Ё¬п-бвагЄвгал.
€¬п § ¤ Ґв Ё¬п ЇҐаҐ¬Ґ®©. …б«Ё Ё¬п ®Їг饮, MASM
а бЇаҐ¤Ґ«пҐв Ї ¬пвм, ® Ґ ᮧ¤ Ґв ЇҐаҐ¬Ґго, Є®в®аго ¬®¦®
Ўл«® Ўл ЁбЇ®«м§®ў вм ¤«п ¤®бвгЇ Є бвагЄвгаҐ.
‚ бЄ®ЎЄ е <> гЄ §лў Ґвбп бЇЁб®Є § 票© Ї®«Ґ©
бвагЄвгал. ‡ зҐЁп ў бЇЁбЄҐ, Ґб«Ё Ёе ҐбЄ®«мЄ®, ¤®«¦л
а §¤Ґ«пвмбп § Їпвл¬Ё. Љ ¦¤®Ґ § 票Ґ ¬®¦Ґв Ўлвм 楫л¬
зЁб«®¬, бва®Є®ў®© Є®бв в®© Ё«Ё ўла ¦ҐЁҐ¬, вЁЇ Є®в®а®Ј®
¤®«¦Ґ б®ўЇ ¤ вм б вЁЇ®¬ ᮮ⢥вбвўго饣® Ґ¬г Ї®«п. „«п
Є ¦¤®Ј® Ї®«п ¬®¦Ґв Ўлвм § ¤ ® ®¤® § 票Ґ.
‘Є®ЎЄЁ <> ®Ўп§ ⥫мл, ¤ ¦Ґ Ґб«Ё з «млҐ § зҐЁп Ґ
§ ¤ л.
…б«Ё ў Є зҐб⢥ § зҐЁп ЁбЇ®«м§гҐвбп ®ЇҐа в®а DUP
(Ї.6.1), ў бЄ®ЎЄЁ <> б«Ґ¤гҐв § Є«оз вм бЇЁб®Є § 票©
®ЇҐа в®а DUP.
‡ ¤ ў вм § зҐЁп ўбҐе Ї®«Ґ© бвагЄвгал Ґ®Ўп§ ⥫м®.
…б«Ё бᥬЎ«Ґа ў¬Ґбв® § зҐЁп ®Ў аг¦Ёв «Ґўл© Їа®ЎҐ«, Ўг¤Ґв
ЁбЇ®«м§®ў ® з «м®Ґ § 票Ґ Ї®«п, § ¤ ®Ґ ЇаЁ ®ЇЁб ЁЁ
вЁЇ бвагЄвгал, Ґб«Ё Ё ®® ®Їг饮, § 票Ґ Ї®«п Ўг¤Ґв
Ґ®ЇаҐ¤Ґ«Ґ®.
‘«Ґ¤гҐв Ї®¬Ёвм, зв® ®Ўкпў«ҐЁЁ бвагЄвгал Ґ«м§п
§ ¤ ў вм § зҐЁп Ї®«Ґ©, ¤«п Є®в®але ў ᮮ⢥вбвўго饬
и Ў«®Ґ § ¤ ® ¬®¦Ґбвў® § 票©. Ќ ЇаЁ¬Ґа:
strings STRUC
buffer DB 100 DUP(?)
crif DB 13,10
guery DB 'Filename'
endm DB 35
strings ENDS
ЏаЁ ®Ўкпў«ҐЁЁ бвагЄвгал б ЁбЇ®«м§®ў ЁҐ¬ нв®Ј®
и Ў«® § зҐЁп Ї®«Ґ© buffer Ё crif Ґ ¬®Јгв Ўлвм § ¤ л,
в.Є. и Ў«® ¤«п Ёе ®ЇаҐ¤Ґ«пҐв ¬®¦Ґбвў® § 票©. ‡ 票Ґ
Ї®«п guery ¬®¦Ґв Ўлвм ЇҐаҐЄалв® в®«мЄ® § 票Ґ¬, ¤«Ё
Є®в®а®Ј® Ґ ЇаҐўли Ґв 8 Ў ©в®ў. Ђ «®ЈЁз®, § 票Ґ Ї®«п
endm ¬®¦Ґв Ўлвм ЇҐаҐЄалв® «оЎл¬ ®¤®Ў ©в®ўл¬ § 票Ґ¬.
Соседние файлы в папке cистема программирования на макроассемблере ms-dos, cправочное руководство