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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.06.2013, 19:06   #31
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

ага сейчас посмотрел, непонятен смысл перехода на next, можно было сразу прыгать на fl, а там уже безо всяких прыжков присвоить mov eax, 0 и идти на exit, т.к. проверка на 0 выполнилась еще в цикле, что не понятно только, а если строки закончатся одновременно? (то есть они равны и закончились) у вас в этом случае он тоже перекинет на fl я так понимаю, как реализовать чтобы проверялись 2 условия одновременно? вроде dl = 0 и dh = 0 тогда прыгать на exit
NewLamer&Programer вне форума Ответить с цитированием
Старый 18.06.2013, 19:10   #32
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

а вообще все разобрался все правильно у вас, спасибо
NewLamer&Programer вне форума Ответить с цитированием
Старый 18.06.2013, 19:13   #33
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

нарушение прав доступа при чтении на строке mov dl, [ecx]
NewLamer&Programer вне форума Ответить с цитированием
Старый 18.06.2013, 19:50   #34
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Код:
int _equal(char *str1, char *str2)
{
	__asm
	{
		push ebx
		push ecx
		push edx
		mov eax, 1
		mov ebx, str1
		mov ecx, str2 
		again:
			mov dh, [ebx]
			mov dl, [ecx]
			cmp dh, 0
			je next
			cmp dl, 0
			je next
			inc ebx
			inc ecx
			cmp dh, dl
		je again
		fl:
		mov eax, 0
		jmp last
		next:
		cmp dh, 0
		jne fl
		cmp dl, 0
		jne fl
		last:
		pop edx
		pop ecx
		pop ebx
	}
}
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 18.06.2013, 19:54   #35
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

что то изменилось?
NewLamer&Programer вне форума Ответить с цитированием
Старый 18.06.2013, 19:58   #36
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Цитата:
Сообщение от NewLamer&Programer Посмотреть сообщение
что то изменилось?
Да, вместо слова exit написано last.
Из-за этого "падала".
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 18.06.2013, 20:02   #37
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

не думал что название метки имеет значение о_О кстати по прежнему падает...
NewLamer&Programer вне форума Ответить с цитированием
Старый 18.06.2013, 20:05   #38
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Дайте примеры строк, на которых падает, а то на моих примерах ничего не падает.
Скорее всего, exit воспринималась не как метка.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 18.06.2013 в 20:08.
BDA вне форума Ответить с цитированием
Старый 18.06.2013, 20:06   #39
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

Цитата:
Сообщение от NewLamer&Programer Посмотреть сообщение
нарушение прав доступа при чтении на строке mov dl, [ecx]
10 символов
NewLamer&Programer вне форума Ответить с цитированием
Старый 18.06.2013, 20:17   #40
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Цитата:
Сообщение от NewLamer&Programer Посмотреть сообщение
что то изменилось?
Еще нет __declspec(naked) и ret.
Так на каких тестовых данных падает? (не строка в коде, а строки, передаваемые в функцию)
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сравнение строк через strcmp(), Си++ Evielle Помощь студентам 12 28.04.2012 17:14
strcmp,strcasecmp kilogram Общие вопросы Delphi 2 10.04.2012 20:31
Функция strcmp bot.bat Помощь студентам 12 23.11.2011 16:16
Функция strcmp() ts-alan Общие вопросы C/C++ 4 04.09.2010 23:00
strlen,strcpy,strcmp(Visual C++) crit Visual C++ 14 09.04.2009 19:10