IPB

Здравствуйте, гость ( Вход | Регистрация )

> сканирование и замена, В ASSEMBLER
гыгыгы)))
сообщение May 12 2007, 18:53
Сообщение #1


Новичок
*

Группа: Members
Сообщений: 23
Регистрация: 13.9.2006
Из: Чебоксары
Пользователь №: 1,734



люди помогите написать прогу для "сканирования и замена в тексте" на Assemblere, уж больно тяжелый язык.... rolleyes.gif
надеюсь кто-нить сможет помочь мне решить эту задачку : )
Вернуться к началу страницы
 
+Цитировать сообщение
 
Создать новую тему
Ответов
гыгыгы)))
сообщение May 19 2007, 09:29
Сообщение #2


Новичок
*

Группа: Members
Сообщений: 23
Регистрация: 13.9.2006
Из: Чебоксары
Пользователь №: 1,734



Цитата(Amp @ May 19 2007, 02:47) *
Что за afd.exe-то? Сначала файло компилируется в объектный файл tasm-ом, затем объектный файл линуется tlink-ом. На выходе - exe или com в зависимости от ключей линковки.


tlink.exe a.obj выдает:
Turbo Link Version 3.01 Copyright © 1987, 1990 Borland International
Warning: No stack

создаются два файла: a.exe и a.map, запускаю exe и выходит ошибка:
D:\....\Tasm\a.exe
Процессор NTVDM обнаружил недопустимую инструкцию.
CS:0000 IP:0077 OP:f0 37 05 13 02

Цитата(Amp @ May 19 2007, 02:47) *
Один момент - предложенный тобой способ будет заменять только один символ, который первым встретится в строке и удовлетворяющий условию.


а как правильно сделать?
Вернуться к началу страницы
 
+Цитировать сообщение
Amp
сообщение May 19 2007, 13:03
Сообщение #3


Мега постер
Иконка группы

Группа: Local moder
Сообщений: 1,712
Регистрация: 21.8.2006
Пользователь №: 1,269



Цитата(гыгыгы))) @ May 19 2007, 10:29) *
Процессор NTVDM обнаружил недопустимую инструкцию.
CS:0000 IP:0077 OP:f0 37 05 13 02

Прога неверно написана )


Цитата(гыгыгы))) @ May 19 2007, 10:29) *
а как правильно сделать?

Либо как я приводил код, либо (если команды строковой обработки принципиальны) использовать lodsb, stosb в цикле


--------------------
irc-капец

#КартинкА#
Вернуться к началу страницы
 
+Цитировать сообщение
гыгыгы)))
сообщение Jun 7 2007, 18:11
Сообщение #4


Новичок
*

Группа: Members
Сообщений: 23
Регистрация: 13.9.2006
Из: Чебоксары
Пользователь №: 1,734



page 60,132
TITLE STRING (EXE) Сканирование и замена в тексте
CODESG SEGMENT PARA 'Code'
ASSUME CS:CODESG,DS:CODESG,SS:CODESG,ES:CODESG
BEGIN: JMP SHORT MAIN
;--------------------------------------------------------
MAXNLEN DB 30 ;Длина поля STRING
ACTNLEN DB ? ;максимальная длина
STRFLD DB 30 DUP(' ') ;Текст
PROMPT DB 'tekst', '$'
STRDSP DB 30 DUP(' '), 13, 10, '$'
;--------------------------------------------------
MAIN PROC NEAR ;Основная процедура
MOV AX,0600H
A10LOOP:
CALL B10INPT ;Ввести текст с клавиатуры
TEST ACTNLEN,0FFH ;Нет имени? (т.е. конец)
JZ A90 ; да - выйти
CALL D10SCAS ;Найти l
CMP AL, 'l' ;Найдена?
JE A10LOOP ; да - обойти
CALL A10LOOP
A90: RET
MAIN ENDP

;Вывод запроса для ввода текста:
; -----------------------------
B10INPT PROC
MOV AH,09
LEA DX,PROMPT ;Выдать текст запроса
INT 21H
RET
B10INPT ENDP
;Поиск звездочки в имени:
; -----------------------
D10SCAS PROC
CLD
MOV AL,'l'
MOV CX,30 ;Длина сканирования - 30
LEA DI,PROMPT
REPNE SCASB ;l найдена?
JE D20 ; да - выйти,
MOV AL,20H ; нет стереть l в AL
D20: RET
D10SCAS ENDP
CODESG ENDS
END BEGIN

Не могу понять где ошибка.....
При компиляции ошибок не было обнаружено, создал exe а там шняга какая-то-набор символов
Вернуться к началу страницы
 
+Цитировать сообщение

Сообщений в этой теме
- гыгыгы)))   сканирование и замена   May 12 2007, 18:53
- - SiMM   Ассемблер - понятие растяжимое - даже под один кри...   May 12 2007, 23:04
|- - гыгыгы)))   Цитата(SiMM @ May 13 2007, 00:04) Ассембл...   May 12 2007, 23:22
- - Amp   Формулировка задания размыта. Откуда берется текст...   May 13 2007, 01:24
|- - гыгыгы)))   Цитата(Amp @ May 13 2007, 02:24) Формулир...   May 13 2007, 11:40
- - гыгыгы)))   строка: scanirovanie i&zamena искомый символ -...   May 13 2007, 21:04
- - Amp   Алгоритм следующий: Код.686 .model flat, stdcall o...   May 13 2007, 23:45
- - гыгыгы)))   Amp, спасибо тебе добрый человек! ОГРОМНЕЙШЕЕ...   May 14 2007, 12:34
- - гыгыгы)))   не запускается твоя прога версии не совпадают ско...   May 14 2007, 16:23
|- - Amp   Цитата(гыгыгы))) @ May 14 2007, 1...   May 14 2007, 17:56
- - гыгыгы)))   спасибо и на этом! это хорошо что есть такие л...   May 14 2007, 19:37
|- - Amp   Цитата(гыгыгы))) @ May 14 2007, 2...   May 14 2007, 19:50
- - гыгыгы)))   page 60,132 TITLE EXRING (COM) Сканирование ...   May 16 2007, 20:55
|- - Amp   Цитата(гыгыгы))) @ May 16 2007, 2...   May 19 2007, 01:47
- - гыгыгы)))   Цитата(Amp @ May 19 2007, 02:47) Что за a...   May 19 2007, 09:29
|- - Amp   Цитата(гыгыгы))) @ May 19 2007, 1...   May 19 2007, 13:03
|- - гыгыгы)))   page 60,132 TITLE STRING (EXE) Сканирование...   Jun 7 2007, 18:11
- - Amp   В отладчике уже не модно смотреть, что к чему? )   Jun 8 2007, 12:35
|- - гыгыгы)))   Цитата(Amp @ Jun 8 2007, 13:35) В отладчи...   Jun 8 2007, 13:20
- - Shweed   "Assembler в кривых руках это бомба" ...   Aug 31 2007, 12:03


ОтветитьСоздать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 3rd July 2025 - 11:31