0 / 0 / 0
Регистрация: 29.05.2010
Сообщений: 9
1

В строке заменить последний символ Z пробелом

03.06.2010, 08:00. Показов 2178. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
у меня получилось заменить только первый символ. препод сказала, нужно использовать метку и вроде команду std, я не поняла. помогите, пожалуйста, доделать:


Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
.586 
.MODEL FLAT, stdcall 
include console.inc
.DATA
      consoleOutHandle  DD ?    ; дескриптор выходного буфера
      consoleInHandle  DD ? ; дескриптор входного буфера
     COUNT DD 0
     numBytes DD ?
     IN_STR DB "Введите строку: ",0
     BUF  DB 200 dup (?)    ; для ввода строки
     COM  DB 200 dup (?)    ; для новой строки
     Len  DD ?      
     SymCount DB 10 dup(?)  ; строка с количеством символов
     CRD  COORD <?>     ; структура координат
.CODE
START proc
     INVOKE FreeConsole
    INVOKE AllocConsole
; получить дескрипторы
    INVOKE GetStdHandle, STD_INPUT_HANDLE
     MOV consoleInHandle,EAX
    INVOKE GetStdHandle, STD_OUTPUT_HANDLE
     MOV consoleOutHandle,EAX
 
    INVOKE PrintStr, offset IN_STR, consoleOutHandle
    INVOKE ReadConsole,consoleInHandle,
OFFSET BUF,200,OFFSET Len, 0
    
    lea     edi,buf
    xor     eax,eax
    mov     al,'z'
    mov     ecx,len
    repne       scasb
    dec     edi
    mov     al,32
    mov     [edi],al
 
    INVOKE PrintStr, offset buf, consoleOutHandle
    INVOKE ReadSymbol, consoleInHandle, consoleOutHandle, 1      
    exit:
     INVOKE ExitProcess,0
         
     RET
START ENDP
END START
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2010, 08:00
Ответы с готовыми решениями:

Заменить последний символ в строке (исправить код)
Всем доброго времени суток, только начинаю программировать на ассемблере многого не понимаю... вот...

Вводится 5 строк . Заменить первый символ на последний в каждой строке
Вводится 5 строк . Заменить первый символ на последний в каждой строке .

Проверить, является ли последний символ в файле пробелом
Подскажите, как проверить последний символ в текстовом файле, например является ли он пробелом.

На диск в файл записывается массив строк как один компонент. Заменить в файле в каждой строке последний символ на '!'
На диск в файл записывается массив строк как один компонент. Заменить в файле в каждой строке...

4
69 / 74 / 0
Регистрация: 15.12.2008
Сообщений: 302
03.06.2010, 09:50 2
Assembler
1
2
        mov byte ptr [edi+eax],' '
        mov byte ptr [edi+eax+1],0
по-моему так

Добавлено через 21 минуту
неправильно прочел задачу решение вот
Assembler
1
2
3
4
5
6
7
8
mov     ecx,len
lea    edi,buf[ecx-1]
std
mov al,'z'
repne scasb
jne @nofind 
mov byte ptr [edi+1],' ' 
@nofind:
1
0 / 0 / 0
Регистрация: 29.05.2010
Сообщений: 9
04.06.2010, 20:09  [ТС] 3
вставлять на место 29-36 строк? выдает ошибку... чего-то там не находит
0
69 / 74 / 0
Регистрация: 15.12.2008
Сообщений: 302
04.06.2010, 22:27 4
да, может buf=BUF но вроде регистрозависимость не включена
0
0 / 0 / 0
Регистрация: 29.05.2010
Сообщений: 9
06.06.2010, 11:01  [ТС] 5
ошибку нашла, она не в программе была, а в настройках. спасибо)))
0
06.06.2010, 11:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.06.2010, 11:01
Помогаю со студенческими работами здесь

Строковый типа данных. Во введённом слове заменить первый и последний символ на символ “*”
2. Задание - Применение строковых процедур и функций Во введённом слове заменить первый и...

Как символ в строке сравнить с пробелом?
#include &quot;cs50.h&quot; #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;ctype.h&gt; #define IN 1...

В заданной строке удалить последний символ пробел, который найдется в строке
Здравствуйте, можете помочь с методом удаления последнего пробела в строке?

Каждый символ строки заменить на следующий за ним, а последний символ строки заменяеть первым
я написал код но не могу разобраться. вот дано :...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru