powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / С+Ассемблер
6 сообщений из 6, страница 1 из 1
С+Ассемблер
    #32529385
Dimush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу прощения за ламерский вопрос. Только недавно занялся этим делом.
Вопрос в том как из C использовать код на ассемблере.
Например у меня есть программа на ассемблере которая выводит курсор мыши:
.model tiny
.code
org 100h ; COM-файл
.186 ; для команды shr cx,3
start:
mov ax,12h
int 10h
mov ax,0
int 33h
mov ax,1
int 33h

mov ah,0
int 16h
mov ax,000Ch
mov cx,0000h
int 33h
mov ax,3
int 10h
ret

end start
Мне необходимо запустить ее из программы на C, и получить координаты курсора.
Подскажите как сделать подобное, либо дайте ссылку где про это можно узнать.
Спасибо.
...
Рейтинг: 0 / 0
С+Ассемблер
    #32529461
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть 2 метода,
1) посмотри директиву asm в помощи
2) Язык наверняка позволяет вставлять машинные кода непосредственно в текст.

Лучше первый путь.
...
Рейтинг: 0 / 0
С+Ассемблер
    #32529501
Dimush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас пробовал, следующая конструкция выдает ошибки :-(.
void main()
{

asm
{
.model tiny
.code
org 100h
.186
start:
mov ax,12h
int 10h
mov ax,0
int 33h
mov ax,1
int 33h

mov ah,0
int 16h
mov ax,000Ch
mov cx,0000h
int 33h
mov ax,3
int 10h
ret

end start
}
}

Может быть нужно какую-нибудь библиотеку подключить?
...
Рейтинг: 0 / 0
С+Ассемблер
    #32529567
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почикаем лишнее

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
void main()
{
asm
{
mov ax,12h
int 10h
mov ax, 0 
int 33h
mov ax, 1 
int 33h

mov ah, 0 
int 16h
mov ax,000Ch
mov cx,0000h
int 33h
mov ax, 3 
int 10h
}
}

Дирекривы ассемблера не нужны в блоке asm.
Команда ret тоже в данном примере не нужна.
...
Рейтинг: 0 / 0
С+Ассемблер
    #32529764
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вспомнил 3 метод!
Ты можешь откомпилировать код на ассемблере как obj и прилинковать его к проекту на С.

Тебе надо в этом случае знать правила именования и вызова функций на С.
...
Рейтинг: 0 / 0
С+Ассемблер
    #32531668
Dimush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Green2 , спасибо за науку вопросов больше нет.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / С+Ассемблер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]