|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.01.2008, 20:17 | #1 |
Регистрация: 21.01.2008
Сообщений: 6
|
_asm
Народ, подскажите пожалуйста, как в visual studio 2005 в C++ (console Application) правильно использовать вставки ассемблерского кода.
Я сделал функцию для очистки экрана и мой си матерится на эту строку(int 10h), он наверное её понимает как переменная типа (int), а не прерывание. Но у меня этот же код прекрасно работает в BorlandC++. Подскажите плиз, как сделать чтоб он и здесь пахал. void cls(){ _asm{//пошол код асма mov ah,06h mov al,0 mov dl,20 mov bh,7 mov cx,0 mov dx,184fh int 10h// прерывание в ассемблере 10h } } Последний раз редактировалось Voucik; 23.01.2008 в 20:20. |
23.01.2008, 22:37 | #2 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
у меня компилица этот кусок
|
24.01.2008, 00:13 | #3 |
Регистрация: 21.01.2008
Сообщений: 6
|
так он компилется, но не работает. Ты вызови эту функцию и увидеш глюк
|
24.01.2008, 03:07 | #4 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
Если это Win32, то бесполезно вызывать прерывания BIOS, это можно делать только под Win16 - в эмуляции под ntvdm.
|