Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/22: Рейтинг темы: голосов - 22, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 23
FASM

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

28.01.2014, 21:41. Показов 4103. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста с выводом каждого второго символа, не могу вообще раздуплиться... (FASM x 64)
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
format PE console
include 'win32axp.inc'
 
.data
last db 'end'
 .length = $ - last
ns   dd ?
hout dd ?
hin  dd ?
buffer db 100h dup ?
buf2    dd 100h
begin:
 
invoke GetStdHandle,STD_OUTPUT_HANDLE
mov [hout],eax
invoke GetStdHandle,STD_INPUT_HANDLE
mov [hin],eax
invoke ReadConsole,[hin],buffer,100h,ns,NULL
invoke WriteConsole,[hout],buffer,[ns],ns,NULL
invoke WriteConsole,[hout],last,last.length,NULL,NULL
invoke Sleep, 3000
invoke ExitProcess,0
.end begin
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.01.2014, 21:41
Ответы с готовыми решениями:

Найти общее произведение элементов матрицы, которые имеют парный номер
Дано матрицу а(размер элемента 4 байта): array dd -1, 2, 10, 0, -5 dd 5, 8, -9, 9, 1 ...

Отсортировать массив методом "парный обмен"
Возникла следующая задача. Вводится массив с клавиатуры и его надо отсортировать методом "парный...

Ввести в консоль строку, программа должна вывести в консоль слова из этого предложения в столбик
Доброго времени суток! Задание: нужно ввести в консоль строку, а программа должна вывести в...

5
Эксперт быдлокодинга
 Аватар для Полный 30h
2094 / 528 / 70
Регистрация: 04.11.2010
Сообщений: 1,314
28.01.2014, 23:26
Лучший ответ Сообщение было отмечено Taatshi как решение

Решение

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
format PE64 Console 5.0
entry Start
 
include 'win64a.inc'
 
section '.text' code readable executable
 
Start:
  invoke SetConsoleTitleA, conTitle
      test eax, eax
      jz Exit
 
  invoke GetStdHandle, [STD_OUTP_HNDL]
      mov [hStdOut], eax
  invoke GetStdHandle, [STD_INP_HNDL]
      mov [hStdIn], eax
  invoke ReadConsoleA,[hStdIn],readBuf,100h,rs,NULL
 
      xor RCX,RCX
      mov ECX,[rs]
      shr ECX,1
      mov RSI,readBuf
      mov RDI,RSI
 
    @@:
      lodsw
      stosb
    loop @R
    
      sub RDI,readBuf
 
  invoke WriteConsoleA, [hStdOut], readBuf, RDI, rs, 0
  invoke ReadConsoleA, [hStdIn], readBuf, 1, rs, 0
 
Exit:
  invoke  ExitProcess, 0
 
section '.data' data readable writeable
 
  conTitle    db 'Console', 0
 
  hStdIn      dd 0
  hStdOut     dd 0
 
  STD_INP_HNDL  dd -10
  STD_OUTP_HNDL dd -11
 
  readBuf  db 100h dup 0
  rs dd 0
 
section '.idata' import data readable
 
  library kernel,'KERNEL32.DLL'
 
  import kernel,\
    SetConsoleTitleA, 'SetConsoleTitleA',\
    GetStdHandle, 'GetStdHandle',\
    WriteConsoleA, 'WriteConsoleA',\
    ReadConsoleA, 'ReadConsoleA',\
    ExitProcess, 'ExitProcess'
1
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 23
29.01.2014, 00:29  [ТС]
Спасибо огромное
0
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 23
11.02.2014, 00:00  [ТС]
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
format PE64 Console 5.0
entry Start
 
include 'win64a.inc'
 
section '.text' code readable executable
 
Start:
  invoke SetConsoleTitleA, conTitle
      test eax, eax
      jz Exit
 
  invoke GetStdHandle, [STD_OUTP_HNDL]
      mov [hStdOut], eax
  invoke GetStdHandle, [STD_INP_HNDL]
      mov [hStdIn], eax
  invoke ReadConsoleA,[hStdIn],readBuf,100h,rs,NULL
 
      xor RCX,RCX
      mov ECX,[rs]
      shr ECX,1
      mov RSI,readBuf
      mov RDI,RSI
 
    @@:
      lodsw
      stosb
    loop @R
    
      sub RDI,readBuf
 
  invoke WriteConsoleA, [hStdOut], readBuf, RDI, rs, 0
  invoke ReadConsoleA, [hStdIn], readBuf, 1, rs, 0
 
Exit:
  invoke  ExitProcess, 0
 
section '.data' data readable writeable
 
  conTitle    db 'Console', 0
 
  hStdIn      dd 0
  hStdOut     dd 0
 
  STD_INP_HNDL  dd -10
  STD_OUTP_HNDL dd -11
 
  readBuf  db 100h dup 0
  rs dd 0
 
section '.idata' import data readable
 
  library kernel,'KERNEL32.DLL'
 
  import kernel,\
    SetConsoleTitleA, 'SetConsoleTitleA',\
    GetStdHandle, 'GetStdHandle',\
    WriteConsoleA, 'WriteConsoleA',\
    ReadConsoleA, 'ReadConsoleA',\
    ExitProcess, 'ExitProcess'
Этот код выводит непарные символы, может я настолько тупой, но я не могу не как переделать на то, что бы выводило парные. Помогите пожалуйста....
0
Ушел с форума
Автор FAQ
 Аватар для Mikl___
16371 / 7683 / 1080
Регистрация: 11.11.2010
Сообщений: 13,757
11.02.2014, 05:09
mashbag,
замени
Assembler
1
2
3
4
@@:
      lodsw
      stosb
    loop @R
на
Assembler
1
2
3
4
@@:
      movsb
      inc esi
    loop @R
1
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 23
12.02.2014, 02:10  [ТС]
Спасибо
Assembler
1
2
3
4
5
6
7
8
9
10
11
      xor RCX,RCX
      mov ECX,[rs]
      shr ECX,1
      mov RSI,readBuf
      mov RDI,RSI
inc RSI
 
@@:
      movsb
      inc esi
    loop @R
Может кому понадобиться)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.02.2014, 02:10
Помогаю со студенческими работами здесь

Подготовить числа для вывода на консоль через ASCII и вывести на консоль
В регистре eax находится число, которое нужно превратить в ASCII-код и вывести на консоль символы,...

Вывод текст в консоль (не получается вывести текст в консоль; попытка была в разделе menu, но вывелся ужас)
d_d1 segment ;начало сегмента данных m1 db 23, '=========MENU=========', 23, '$' m2 db 23, '| 1-...

Вывести приглашение к вводу символа, ввести символ, вывести введенный символ в центре очищенного экрана
Приложение DosBox Tasm.

Вывести каждый третий элемент введённого через консоль слова
Программа должна выводить каждый третий элемент введённого через консоль слова, использую 3Fh и...

Задан символьный массив. Ввести с клавиатуры символ и вывести на консоль количество таких символов в массиве.
Помогите решить лабораторные: 1,Задан символьный массив. Ввести с клавиатуры символ и вывести...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru