Преобразование строки в DWORD (сборка x86) - PullRequest
1 голос
/ 11 марта 2012

Я пытаюсь узнать, как преобразовать строку в целое число. Я думаю, что я довольно близко. Мой код работает для чисел меньше 260. Как только введенные числа больше или равны 260, он просто конвертирует их в 0. Я думаю, что это может иметь отношение к размеру байта, но я не уверен, как починить это. Какие-либо предложения? Некоторые функции Irvine включены, но я пытаюсь написать свою собственную функцию ReadInt.

1 Ответ

2 голосов
/ 11 марта 2012

Я вижу проблему. Вместо того, чтобы выдавать ответ полностью, вот подсказка:

Инструкция lodsb загружает один байт в al (что является младшими 8 битами eax). Остальное eax без изменений. Что может заставить eax содержать дополнительные биты, которые не изменены lodsb?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...