Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 19.03.2021
Сообщений: 7

Ассемблерные вставки в C++ (ввод/вывод данных на языке высокого уровня)

26.05.2021, 15:20. Показов 2112. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, форумчане. Буду благодарен, если поможете. Имеется довольно примитивная программа на ассемблере.

Что делает программа? Имеются два числа a и b. Программа определяет принадлежит ли заданное число x отрезку [a, b].

В чем проблема? Нужно составить программу на C++ с использованием ассемблерной вставки. На C++ должен осуществляться ввод a, b и x, а так же вывод «принадлежит»/«не принадлежит», а остальное — вставкой на ассемблере.
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
.8086
.model small
.stack 100h
.data
a word 10h
b word 20h
x word 1Ah
flag byte 0h ; 0 – не принадлежит, 1 - принадлежит
.code
Start:
mov ax,@data
mov ds,ax
mov ax,x
cmp ax,a
jb @exit ; если x < a, то выход
cmp ax,b
ja @exit ; если x > b, то выход
inc flag ; иначе x принадлежит отрезку [a,b] 
@exit:
mov ah,4Ch
int 21h
end Start
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.05.2021, 15:20
Ответы с готовыми решениями:

Связь программ на языке высокого уровня и языке ассемблера
Всем здраствуйте)у меня проблемка,есть процедура сортировки массива бетчера на ассемблере и есть основная программа на pascal,в которую...

Разработать алгоритм на языке высокого уровня
Помогите разработать алгорит, составив его описание на алгоритмическом языке высокого уровня, отладить программу. Входные данные: 1)...

Создать программу на языке высокого уровня
Само задание Условие Построить стягивающее дерево неориентированного графа S методом поиска в ширину и вывести список ребер...

2
Модератор
Эксперт CЭксперт С++
 Аватар для Volga_
5209 / 2926 / 1509
Регистрация: 14.12.2018
Сообщений: 5,266
Записей в блоге: 1
26.05.2021, 15:34
Лучший ответ Сообщение было отмечено never121415 как решение

Решение

never121415, можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
using namespace std;
 
int main()
{
    short a = 16, b = 32, x = 26, flag = 0;
    __asm 
    {
        mov ax, x
        cmp ax, a
        jb thoat; если x < a, то выход
        cmp ax, b
        ja thoat; если x > b, то выход
        inc flag; иначе x принадлежит отрезку[a, b]
    }
 
thoat:
    if (flag)
        cout << "Inside !" << endl;
    else
        cout << "Outside !" << endl;
    
    return 0;
}
1
0 / 0 / 0
Регистрация: 19.03.2021
Сообщений: 7
26.05.2021, 19:31  [ТС]
Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.05.2021, 19:31
Помогаю со студенческими работами здесь

Создать эмулятор процессора на языке высокого уровня программирования
Доброго времени суток! В универе стоит задача написать эмулятор процессора на языке высокого уровня программирования по поиску...

Контрольная работа №1 по курсу «Программирование на языке высокого уровня»
Контрольная работа №1 по курсу «Программирование на языке высокого уровня» Всем привет помогите решить контрольную Заранее Спасибо ...

Связь подпрограмм на Ассемблере с программами на языке высокого уровня (Assembler + C)
Здраствуйте форумчане! Возникла небольшая проблема во время ассемблерной вставки. Собственно у меня имеется рабочая программа на...

Лабораторные работы по учебнику Павловская C# программирование на языке высокого уровня
может кто то делал уже лабораторные по этому учебнику? желательно 19 вариант( если ни у кого нету, тогда могу скинуть задания(

Программа тестирования по одному из разделов курса «Программирование на языке высокого уровня»
Разработайте программу тестирования по одному из разделов курса «Программирование на языке высокого уровня». в которой выбор правильного...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru