Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.10.2010, 17:22   #1
werser
Форумчанин
 
Регистрация: 11.06.2007
Сообщений: 233
По умолчанию Вывод данных

Добрый день. Помогите пожалуйста доделать програмку
Нужно ввести массив из разных символов и вывести только символы индекс у которых кратный 3.
Сам ввод и вывод вобще с горем пополам удалось осовить а вот с условным оператором проблемы:
Код:
mes	db	0ah,0dh,'Bufer- ','$'
mas	db	10 dup (?) 
i	db	0
.code
main:
	mov	ax,@data
	mov	ds,ax
	xor	ax,ax	
	mov	cx,5	
	mov	si,0	
go:				
	mov	bh,i	
	
	mov ah,0
	int 16h
	mov bh,al 
	mov ah,0eh
	int 10h 
	cmp bl,' ' 
	mov	mas[si],bh	
	inc	i		
	inc	si		
	         
	
	loop	go	

	mov	cx,5
	mov	si,0
	mov	ah,09h
	lea	dx,mes
	int	21h
show:
	mov	ah,02h	
				
	mov	dl,mas[si]
	
	int	21h
	inc	si
	loop	show
exit:
	mov	ax,4c00h	
	int	21h
end	main
Что сдесь нужно изменить что бы вывело только те символы которые мне нужны
Код:
show:
	mov	ah,02h	
				
	mov	dl,mas[si]
	
	int	21h
	inc	si
	loop	show
Помогите пожалуйста
werser вне форума Ответить с цитированием
Старый 06.10.2010, 17:51   #2
BVOG
Python,C++,ASM,Php
Пользователь
 
Аватар для BVOG
 
Регистрация: 29.08.2010
Сообщений: 58
По умолчанию

Сделай проверку на целые числа на при делении.
Хакер - это не ламер с завышенным самомнением, а программист с заниженной зарплатой.
Нелегка и неказиста жизнь простого программиста.
BVOG вне форума Ответить с цитированием
Старый 06.10.2010, 21:54   #3
werser
Форумчанин
 
Регистрация: 11.06.2007
Сообщений: 233
По умолчанию

Все дело в том что я не знаю как написать это на ASM =((
werser вне форума Ответить с цитированием
Старый 07.10.2010, 04:49   #4
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,139
По умолчанию

werser
наверное так:
Код:
.286
.model small
.data
mes db 'Введите строку и нажмите Enter',0Ah,0Dh,'$'
mes1 db 0Ah,0Dh,'через три символа',0Ah,0Dh,'$'
buffer db 254,0,254 dup('$')
.code
start:	mov ax,@data
	mov ds,ax
	mov ax,3; очищаем экран
	int 10h
	mov ah,9
	mov dx,offset mes
	int 21h; выводим приглашение
; функция 0Ah 21h прерывания вводит строку длиной до 254 символов, выводя эти символы на экран. 
;Ввод символов продолжается до тех пор, пока не нажата клавиша Enter. Адрес памяти, куда будет 
;помещена строка символов, указан в регистрах DS:DX. Для ввода 254-символьной строки надо отвести 
;256 байта памяти. Первый байт будет содержать число байтов отведенных для этой строки плюс 1 для 
;символа возврата каретки. Второй байт — число реально введенных символов. Последний байт отводится 
;под символ возврата каретки.
	mov ah,0Ah
	mov dx,offset buffer
	int 21h; получаем строку символов пока не нажмут на Enter
	mov ah,9
	mov dx,offset mes1
	int 21h
	mov bx,0; обнуляем счетчик символов
	mov ah,2; 2 функция 21h прерывания -- выводим символы из DL на экран
a0:	mov dl,buffer+2[bx];в buffer строка начинается с 3-его байта
	int 21h
	add bx,3; через 3 символа
	cmp bl,buffer+1; здесь количество введенных символов
	jna a0; повторяем пока не пройдем по всей строке
	mov ah,0
	int 16h; любуемся на дела рук своих пока не нажмут на любую клавишу
	mov ah,4Ch
    	int 21h;выходим из программы
end start

Последний раз редактировалось Mikl___; 07.10.2010 в 06:27.
Mikl___ вне форума Ответить с цитированием
Старый 07.10.2010, 19:34   #5
werser
Форумчанин
 
Регистрация: 11.06.2007
Сообщений: 233
По умолчанию

Ого спасибо Вам большое при большое!!!!
werser вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++ ввод/вывод данных Sonny01 Помощь студентам 4 21.03.2010 11:51
Вывод данных Vitaliy3009 Общие вопросы Delphi 3 10.10.2009 16:15
C# TextBox, вывод данных. Jenya Общие вопросы C/C++ 6 29.09.2009 16:03
вывод данных из БД niziriska PHP 1 10.06.2009 15:01
Вывод данных в Excel Novi4ek Помощь студентам 3 22.05.2008 11:32