![]() |
1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!
![]() |
brut_ |
![]() ![]()
Сообщение
#1
|
Гость ![]() |
Помогите пожалуйста с двумя задачками:
1) Дан массив из 10 элементов. Вычислить разность между максимальным и минимальным элементами (используйте адресацию по базе). 2) Дан массив P[0..k]. Определить сколько элементов удовлетворяют неравенству A<P[i]<B (используйте косвенную регистровую адресацию). Я ее частчно сделал: stac segment stack 'stack'
db 128 dup ('st')
stac ends
dan segment
mass db 24,41,27,38,64,65,7,21,47,3
nmass db 10 dup(?)
A db 8,42
dan ends
cd segment
assume cs: cd, ds: dan, ss: stac
start proc far
push ds
sub ax,ax
push ax
mov ax, dan
mov ds,ax
mov ah, 0
mov cx, 10
mov bx, offset mass
mov di, offset nmass
mov si, offset a
begin: mov al, [bx]
cmp al, [si]
jg cxz
jl s
cxz: cmp al, [si+1]
jl xz
jmp s
xz: inc ah
s: inc bx
loop begin
mov [di],ah
ret
start endp
cd ends
end start
осталось самое сложное:Ввода с клавиатуры исходных данных и вывода на экран исходных и конечных данных. Очистить экран и вывести результат в рамке красного цвета Поменять цвет рамки через 5 сек. Помогите, пожалуйста... |
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 2:57 |