Всё это конечно хорошо, но тут возникли проблемы с программами.
Собственно вот 2 штуки
1. Определить, содержит ли байт данных в кодовом сегменте в разрядах 6-2 двоичную комбинацию 11010. Если да, то сформировать код в регистре ВН следующим образом : сумма тетрад исходного байта, если значение старшейй тетрады больше младшей, разность тетрад в противном случае.
Если полученный в ВН код меньше 40, инвертировать его.
2. В области кодового сегмента размещен массив двухбайтных данных. Данные, значения которых находятся в интервале от -20 до 20 заменить на противоположные по знаку и в однобайтном формате записать в другую область.
Все проги односегментные, т.к. потом надо делать .сом
Вот мои соображения:
Код:
.386 preved segment use32 assume cs:preved org 100h M1: mov ax,preved mov cs,ax mov al,ds:[a] and al,01111100b cmp al,01101000b jne M2 mov al,ds:[a] mov ah,al ror ah,4 and ax, 0000111100001111b cmp ah,al jl M3 add ah,al mov bh,ah M3: sub ah,al mov bh,ah M2: cmp bh,40 jge M4 not bh M4: int 20h a db (?) preved ends end M1
и вторая
Код:
.386 preved segment use32 assume cs:preved Org 100h M1: mov ax,preved mov cs,ax mov cs,ax mov CX,10 mov SI,0 mov DI,0 M2: cmp cs:[mass+SI],-20 jg M3 inc SI inc SI jmp M5 M3: cmp cs:[mass+SI],20 jl M4 inc SI inc SI jmp M5 M4: neg cs:[mass+SI] mov al,cs:[mass+SI] mov cs:[mass2+DI] inc DI M5: loop M2 int 20h mass dw 10 dup (?) mass2 db 10 dup (?) preved ends end M1
Народ, помогите!!!!! Препод валит!!!! Незнаю как разработать алгоритм программы на физическом уровне записи графической информации в режиме -1. Кто может набросать эту прогу? Буду очень благодарен.
Member
Статус: Не в сети Регистрация: 15.02.2005 Откуда: Минск
Народ, допомажите плиз! Надо сдавать лабу по АСМУ, а я в низкойровневом програмировании просто ДАУН!!!! Короче, лаба предельно простая, но я туплю... набросайте хоть примерный код проги - дальше сам буду разбираться. Тому кто поможет - пожизненный памятник!!!!
ЗЫ: Сделать надо для ЛЮБОГО варианта... ну например для певого (первая строчка в таблицах).
ЗЗЫ: Народ, это реально горит... завтра надо сдать ЗЗЗЫ: Простите, но по конференции искать некогда... Да не забанят меня модераторы...
Member
Статус: Не в сети Регистрация: 29.10.2003 Откуда: 埼玉、日本 Фото: 9
debug.exe - 16-битное приложение, работает в подсистеме DOS в Win32. И те проги, что пишутся под ним, пишутся на элементарном 16-битном ассемблере. Они же будут работать и под DOS.
Member
Статус: Не в сети Регистрация: 26.10.2004 Откуда: СПб
Svet я могу куски кода набросать как выглядеть будут, код должен быть 16-битным или 32-битным? В debug этот сам тогда вбивать будешь я не знаю что это такое
В каждый элемент массива переслать число (табл.1), используя метод адресации согласно варианту (табл.2). А сразу нельзя числом заполнить нулями то зачем, что за лол задание составлял
Вычислить сумму элементов массива согласно варианту и переслать результат в элемент массива с заданным номером (табл.3).[i] C 2 по 5 запись в 8 элемент ;bx не менялось
Вычислить произведение элементов с заданнием согласно варианту и результат поместить в элемент с заданным номером (для вариантов с 32-битными числами берутся младшие части элементов) (табл.4).[i]
Тут цикла нету:
mov ax, [bx + (2 - 1)*2]
mov dx, [bx + (7 - 1)*2]
mul dx
;запись младшей части
mov [bx + (3 - 1)*2], ax
;старшей части..
mov [bx + (1 - 1)*2], dx
В общем туповатое задание какое-то.. нет чтоб новый 3D драйвер за место forceware написать
Даны натур. n и m действительные числа (размеры массивов), нужно чтобы они вводитились с клавы по запросу,вот получаются два одномерных массива а1...an и b1...bm, найти наименьшее чесло в первом массиве, которое не входит во второй массив...ОЧЕНЬ НУЖНА ПОМОЩЬ В РЕШЕНИИ ЭТОЙ ЗАДАЧИ РЕШИТЕ ПОЖАЛУЙСТА ДУМАЮ ДЛЯ ТЕХ КТО ХОРОШО В АССЕМБЛЕРЕ ПОНИМАЕТ ЭТО НЕ ПРОБЛЕМА, БЛАГОДАРНОСТЬЮ БУДЕТ МОЯ БЛАГОДАРНОСТЬ =О)))) ПОЖААААЛУСТА!, если найдутся желающие мне помочь пишите пожалста или сюда или в асю... она есть в инфе
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения