Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с процедурой

1.2K
08 июля 2007 года
piroman17
175 / / 20.07.2006
На строке div cx происходит зависание. Никак не могу понять что процу не нравится, плиз, помогите найти ошибку!

Код:
free_seg proc
;es-таблица
;eax-номер страницы

mov cx,8
mov edx,eax
shr edx,8
div cx   ;ТУТ ВИСНЕТ

mov ebx,eax
;edx-остаток
mov al,byte ptr es:[ebx]
mov ah,10000000b
mov ecx,edx
shr ah,cl
or al,ah
mov es:[ebx],byte ptr al
ret
endp
1.9K
08 июля 2007 года
disasm
232 / / 06.02.2006
Вместо тех четырех строк кода можно использовать эти:
 
Код:
mov edx,eax
and edx,7
shr eax,3


А вообще, при делении больших чисел на 8, результат может не поместиться в регистр ax, из-за этого переполнение, прерывание, ...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог