системы управления базой данных, win zip, бухгалтерия, asplinux deluxe, avast 4.7, .

hardenworld.narod.ru

 
 На сайте
   Главная
   Links

 Разделы
avast 4 professional edition
текстовые редакторы
программы архиваторы
avast 4 server
текстовые редакторы
антивирус панда
антивирусные программы
архиватор winrar
symantec antivirus
домашняя бухгалтерия
win zip
 Главная  Links
{img1} asplinux 11
Хотя идея использования макросов в вводной и заключительной части .EXE-программ и замечательна, включение имен "важных" символов в сами макросы применяется ред- ко. Если имя сегмента данных отличается от dat _seg, в программе может возникнуть нежелательная конфликтная ситуация.
система распознавания текста
{img2} операционная система windows
Например, когда макро @TypeStr должно передать имя dat_seg в качестве аргу- - 1-9 - мента или макро @InitPrg полагает, что сегмент данных называется dat_seg. Директивы листинга макро Если вы хотите увидеть полный листинг макро, поместите в файл с ассемблерной программой директиву MASM .LALL. Затем получите файл .LST и сравните его с первоначальным листингом нашего приме- ра.
winrar
{img3} symantec
Теперь оператор ASSUME ds:data_seg будет в листинге. Для из- менения режима листинга на обратный используйте директиву .XALL. Она вернет MASM в режим, устанавливаемый по умолчанию.
программа резервного копирования

avast 4 professional edition

системы управления базой данных, win zip, бухгалтерия, asplinux deluxe, avast 4.7, .
 

win архиваторы

Макрорасширение программы Hello World ------------------------------------------------------------- ;******************************************************** ; П Р О Г Р А М М Н А Я С Е К Ц И Я ;******************************************************** ; ; @InitStk ;установить стек 1 stk_seg SEGMENT stack 1 DB 32 dup ('stack ') 1 stk_seg ENDS cod_seg SEGMENT ;определить сегмент кода main PROC FAR ;главная (одна) процедура ASSUME cs:cod_seg ;назначить сегм.кода рег.CS @InitPrg dat_seg ;инициализ-ать сегмент данных 1 start: ;главная точка входа 1 mov ax,dat_seg 1 mov ds,ax ;установить сегмент данных 1 mov es,ax ;установить внешний сегмент @TypeStr 'Hello World!' ;выдать приветствие 1 cod_seg ENDS ;приостановить сегмент кода 1 dat_seg SEGMENT ;перейти к сегменту данных 1 ??0000 DB 'Hello world!,'$' ;определить строку 1 dat_seg ENDS ;приостановить сегмент данных 1 cod_seg SEGMENT ;вернуться к сегменту кода 2 mov dx,offset ??0000 2 mov ah,09h 3 int 21h ;вызвать функцию MS-DOS @Finis ;завершить программу 1 mov ax,4C00h ;завершить процесс 2 int 21h ;вызвать функцию MS-DOS main ENDP ;закончить процедуру cod_seg ENDS ;закончить сегмент кода END start ;закончить программу ... Прежде всего необходимо заметить, что используемый локальный адрес (saddr) в @TypeStr отлично работает как метка оператора данных. При связывании меток с данными не используйте двоеточие (:). Далее посмотрим, как макрорасширение использует зарезервиро- ванное слово SEGMENT (сегмент) в макро @InitPrg. Нет проблем! Вспомните, что имена формальных аргументов в списке аргументов перекрывают все другие описания MASM. Обратите внимание, что некоторые строки не включены в листин- говый файл. Например, оператор ASSUME ds:data_seg из @InitPrg опущен. Оператор был отассемблирован, но MASM подавил вывод его расширения. Все это произошло по причине специфики обработки макросов. По умолчанию, исходные строки, не вырабатывающие исполнительного ко- да, в листинге подавляются. Оператор ASSUME является директивой MASM, которая не вырабатывает собственного кода; таким образом, он в листинге отсутствует. С другой стороны, директивы завершения сегмента ENDS приводятся в листинге, хотя программный код не вы- рабатывают. Есть в MASM тайны, над которыми всем нам стоит пораз- мышлять. Представленную программу не следует рассматривать, как эталон хорошего программирования.


текстовые редакторы


 
 

CNews: Новости | e-Business | Hi-Tech | Telecom List.ru - каталог ресурсов интернет Directrix џ­¤ҐЄб жЁвЁа®ў ­Ёп
Сайт создан в системе uCoz
class=yandex_annotation>'+aObj[j].descr+'';}} str+=''; document.write(str);
 
CNews: Новости | e-Business | Hi-Tech | Telecom List.ru - каталог ресурсов интернет Directrix џ­¤ҐЄб жЁвЁа®ў ­Ёп
Сайт создан в системе uCoz