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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.04.2012, 21:54   #1
OpenId
 
Регистрация: 18.03.2010
Сообщений: 8
По умолчанию ASM.Builder 6.Вывод цифр

Код с++ с вставкой asm. Сформировать строку выводящу только числа (формирование на асме)


Код:
#include "stdio.h"
#include "string.h"

void main(int argc, char* argv[])
{
   static char str[40];
   static char buf[40];
   char *s;
   char *b;
   strcpy(str,"123hhg56");
   s=str;
   b=buf;
   printf ("%s","-_- \n");
   printf ("%s\n",str);
   _asm {

        mov bx,s
        mov bp,b
	mov cx,40
	xor si,si
	xor di,di
	mov ah,2h
   }
   next:
   _asm {
       	mov dl,[bx][si]
	//30h("0") - 39h("9")
	cmp dl,30h
	jb go
	cmp dl,39h
	ja go
   }
   go:
   _asm {
	inc si
	loop next
   }
   end:
   _asm {
	mov dl,13
	int 21h
       	mov dl,10
        int 21h
   }
   printf ("%s",buf);
   _asm {
	mov ah,4ch
	int 21h
   }
}
Ошибки:

[C++ Error] Unit1.cpp(17): E2510 Operand size mismatch (строка mov bx,s)
[C++ Error] Unit1.cpp(18): E2510 Operand size mismatch (строка mov bp,b)

Заменяя на ebx и ebp тоже много ошибок выползает. Прошу помощи. Спасибо!
OpenId вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
builder не видит переменную внутри asm вставки xinch C++ Builder 7 24.04.2012 18:28
Вывод списка символов справа налево 5 раз подряд и исключить вывод цифр Gareek Помощь студентам 2 23.12.2011 21:41
Вывод двумерного массива(asm) Xanex Помощь студентам 0 29.05.2010 23:19
[ASM] вывод параметра zall Помощь студентам 0 20.05.2010 14:45
asm-вставки в конс.пр С++Builder ZeBe Помощь студентам 1 23.03.2009 09:54