Вопрос № 86062: Здравствуйте.
Подскажите, пожалуйста, где можно скачать справочник по всем коммандам блока XMM (расширения SSE/SSE2) с достаточным описанием каждой комманды?...Вопрос № 86070: Необходимо работать с файлом, имя которого вводится с клавиатуры. В приложении я привел фрагмент моей программы, в которой я пытаюсь вводить с клавиатуры это имя. Но программа работает не так как ожидается. Мне не понятно, почему не происходит ожидан...Вопрос № 86119:
Здраствуйте уважаемые эксперты. Мой вопрос состоит в следующем:
Как считать информацию с текстового файла, и записать её в массив?...
Вопрос № 86.062
Здравствуйте.
Подскажите, пожалуйста, где можно скачать справочник по всем коммандам блока XMM (расширения SSE/SSE2) с достаточным описанием каждой комманды?
Отвечает: Зенченко Константин Николаевич
Здравствуйте, John Paramol!
Описание команд XMM можно найти в книгах Зубкова:Ассемблер или Юрова:Учебник
Удачи!
--------- И только наступив на грабли мы преобретаем драгоценный опыт!
Ответ отправил: Зенченко Константин Николаевич (статус: Студент)
Ответ отправлен: 10.05.2007, 10:48 Оценка за ответ: 5 Комментарий оценки: Спасибо. Однако в первой книге нет ни слова про XMM. Юров - то, что надо. Но я уже нашел более подходящий вариант, правда без картинок. Думаю, возьму картинки из Юрова.
Вопрос № 86.070
Необходимо работать с файлом, имя которого вводится с клавиатуры. В приложении я привел фрагмент моей программы, в которой я пытаюсь вводить с клавиатуры это имя. Но программа работает не так как ожидается. Мне не понятно, почему не происходит ожидания пока пользователь не введет строку. Предполагается, что после кода в приложении должно выполниться что-то вроде
mov ax,3d00h
mov dx,offset path
int 21h
Как нужно изменить код, чтобы по смещению path получить строку (вводимую пользователем) с путем файла, чтобы его потом открыть?
Приложение:
Отправлен: 08.05.2007, 22:07
Вопрос задал: Blackie (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Sov
Здравствуйте, Blackie!
Вот пример работы с файлами, переделаете как вам нужно
data db 100,?,102 dup(0);длина имени не должна превосходить 100 символов
реально введеная длина строки содержится во 2-м байте. Собственно введеный текст содержится начиная с 3 байта. Функция 3d (да и другие) для работы требует строку с именем файла, которая заканчивается 0. Поэтому переменную data использовать нельзя. Просто из data начиная с 3 байта копируем информацию в path и далее работаем с этим массивом
Приложение:
Ответ отправил: Sov (статус: 2-ой класс)
Ответ отправлен: 09.05.2007, 06:39 Оценка за ответ: 4 Комментарий оценки: Ваш код можно оптимизировать. Вместо цикла можно написать для добавления нуля: xor cx,cx mov cl,data+1 mov bx,offset data add bx,cx add bx,2 mov byte ptr [bx],0 (либо инициализировать строку нулями при описании сегмента данных) И затем открывать файл: mov ax,3d00h mov dx,offset data add dx,2
Вопрос № 86.119
Здраствуйте уважаемые эксперты. Мой вопрос состоит в следующем:
Как считать информацию с текстового файла, и записать её в массив?
Отвечает: IceWolf
Здравствуйте, Серов Игорь Владимирович!
Чтож, Windows так Windows.
Для считывания информации из тестового файла(и не только текстового и не только файла)применяется API-функция ReadFile/ReadFileEx. Приведу прототипы обоих:
BOOL ReadFile(
HANDLE hFile, // хэндл читаемого файла
LPVOID lpBuffer, // адрес буфера для считанных данных
DWORD nNumberOfBytesToRead, // количество читаемых байт
LPDWORD lpNumberOfBytesRead, // адрес DWORD'а куда будет помещено количество дествительно прочитанных байт
LPOVERLAPPED lpOverlapped // адрес структуры OVERLAPPED
);
Аналогично:
BOOL ReadFileEx(
HANDLE hFile, // handle of file to read
LPVOID lpBuffer, // address of buffer
DWORD nNumberOfBytesToRead, // number of bytes to read
LPOVERLAPPED lpOverlapped, // address of offset
LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine // address of completion routine
);
Функция ReadFileEx является более современной.
Как всем этим пользоваться почитайте у Iczelion'а:
http://wasm.ru/article.php?article=1001012
Встроенных же средств для работы с тестовыми файлами в ассемблере(в отличие, например, от дельфи) нет.
Удачи!
--------- Идеальных защит не существует, ибо то, что создано человеческим разумом, им же будет и разрушено!
Ответ отправил: IceWolf (статус: 8-ой класс)
Ответ отправлен: 10.05.2007, 19:01