размер ехе файла

Низкоуровневое программирование портов, микроконтроллеров и т.д.

Модератор: Andy

Ответить
Аватара пользователя
olla-la
Сообщения: 9
Зарегистрирован: 23 мар 2008, 15:20

вот есть программа
там где объявляется буферная строка надо ее задать както с помощью прерываний.
что уменьшить размер ехе файла. Помогите!
Вложения

[Расширение txt было запрещено, вложение больше недоступно.]

airyashov
Сообщения: 441
Зарегистрирован: 02 ноя 2007, 10:31

зачем? воспользуетесь динамической памятью
DOS, функция 48h
Выделить память
Вход:
AH-48h
ВХ-запрошенное количество памяти в 16-байтных параграфах
Выход:
CF=0, если функция выполнена успешно
АХ - сегментный адрес распределенного блока
CF"!, если при выполнении функции возникли ошибки
АХ - код ошибки
ВХ - размер максимального доступного блока памяти (в параграфах)

Описание.
Распределяет блок памяти длиной ВХ параграфов, возвращая сегмент-
ный адрес этого блока в АХ (блок начинается с АХ=0000). Если распре-
деление неудачно, устанавливается флаг CF, в АХ возвращается код
ошибки, а ВХ содержит максимальный размер доступной для распреде-
ления памяти (в параграфах). Чтобы определить наибольший доступ-
ный блок, общепринято устанавливать BX=FFFFh перед вызовом.
Распределение завершится с ошибкой, возвратив размер максимально-
го блока памяти в ВХ.
Аватара пользователя
somewhere
Сообщения: 1858
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

В коде используйте функцию 72 прерывания 33, в BX задайте число 16-байтовых блоков для выделения. После вызова получите в AX сегмент выделенной памяти. Флаг CF=1 будет свидетельствовать об ошибке.
It's a long way to the top if you wanna rock'n'roll
Аватара пользователя
olla-la
Сообщения: 9
Зарегистрирован: 23 мар 2008, 15:20

попробую.спасибо!
Аватара пользователя
olla-la
Сообщения: 9
Зарегистрирован: 23 мар 2008, 15:20

у меня ничего не вышло.
не могли вы написать как вывести строку прерываниями?
чтобы ехе уменьшился?
Ответить