Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2011, 22:41   #1
Namolem
Oo
Форумчанин
 
Аватар для Namolem
 
Регистрация: 10.10.2009
Сообщений: 350
По умолчанию Непонятная ошибка (MASM32)

Переписываю 16-битную программу под TASM на MASM32

В данном отрывке:
Код:
;Меняет цвет фона и символов заданной строки на текущий
;В AH - X начала строки, в AL - Y начала строки, в CX - длина строки
ChangeStringAttr proc
	push 	AX
	push 	DI
	push 	ES
 	call 	GotoXY

	mov 	DI, 0B800h
 	mov 	ES,DI

	mov 	AH,CurAttr
 	mov 	DI,CurAddr
  	inc 	DI
  AttrLoop:
  	mov 	ESI:[EDI],ah
   	inc 	DI
   	inc 	DI
   	loop 	AttrLoop

	pop 	ES
	pop 	DI
	pop 	AX
 	ret
ChangeStringAttr endp
получаю ошибку на строке mov ESI:[EDI], ah

kr2.asm(315) : error A2096: segment, group, or segment register expected

В исходном коде эта строчка выглядела так:
mov SI:[DI], ah
Namolem вне форума Ответить с цитированием
Старый 13.11.2011, 22:54   #2
vadimych
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 325
По умолчанию

Может, mov es:[di],ah?

Последний раз редактировалось vadimych; 13.11.2011 в 23:53.
vadimych вне форума Ответить с цитированием
Старый 14.11.2011, 00:25   #3
Namolem
Oo
Форумчанин
 
Аватар для Namolem
 
Регистрация: 10.10.2009
Сообщений: 350
По умолчанию

Да, действительно, опечатка.
Выдало unhandled exception при запуске, как бы мне его теперь поймать?
Namolem вне форума Ответить с цитированием
Старый 14.11.2011, 00:54   #4
vadimych
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 325
По умолчанию

int 3 для дебаггера в код вставь.
vadimych вне форума Ответить с цитированием
Старый 14.11.2011, 06:48   #5
Namolem
Oo
Форумчанин
 
Аватар для Namolem
 
Регистрация: 10.10.2009
Сообщений: 350
По умолчанию

а что это значит?
Namolem вне форума Ответить с цитированием
Старый 14.11.2011, 06:49   #6
Namolem
Oo
Форумчанин
 
Аватар для Namolem
 
Регистрация: 10.10.2009
Сообщений: 350
По умолчанию

я не уверен, но мне кажется эксепшн вылетает на функции "спрятать курсор", вызываемой через прерывание 10h

программа запускается в Win 7 x64
Namolem вне форума Ответить с цитированием
Старый 14.11.2011, 11:34   #7
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

Namolem
по ошибке
Код:
kr2.asm(315) : error A2096: segment, group, or segment register expected
ясно что в программе более 315 строк, ты привел фрагмент из 23 строк и хочешь узнать при обращении к командам на какой строке в твоей программе происходит "unhandled exception" -- отвечаю, ошибка в 247 строке...
Mikl___ вне форума Ответить с цитированием
Старый 14.11.2011, 19:48   #8
Namolem
Oo
Форумчанин
 
Аватар для Namolem
 
Регистрация: 10.10.2009
Сообщений: 350
По умолчанию

Цитата:
Сообщение от Mikl___ Посмотреть сообщение
Namolem
по ошибке
Код:
kr2.asm(315) : error A2096: segment, group, or segment register expected
ясно что в программе более 315 строк, ты привел фрагмент из 23 строк и хочешь узнать при обращении к командам на какой строке в твоей программе происходит "unhandled exception" -- отвечаю, ошибка в 247 строке...
есть же наверно специальные методы отладки..
я новичок в асме и многого не знаю.
Namolem вне форума Ответить с цитированием
Старый 15.11.2011, 17:26   #9
Namolem
Oo
Форумчанин
 
Аватар для Namolem
 
Регистрация: 10.10.2009
Сообщений: 350
По умолчанию

нашел OllyDebug, действительно ошибка появляется при попытке вызвать 10 прерывание.
Namolem вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Непонятная ошибка Shurik(c) Помощь студентам 0 01.06.2011 20:34
VS C++,непонятная ошибка RFbager Общие вопросы C/C++ 4 31.10.2010 03:30
Непонятная ошибка Дырдин Общие вопросы C/C++ 7 14.10.2009 21:30
Непонятная ошибка. program123 Общие вопросы Delphi 12 12.04.2009 23:07
Непонятная ошибка Juri Помощь студентам 6 07.11.2008 19:28