![]() |
1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!
![]() |
Rocket |
![]() ![]()
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 306 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Вот начал изучать Assembler. Как-то смутно всё, примеров наглядных нет, а прожку нужно вот написать, хотя должно быть она довольно лёгкая. СОбственно задача: дан массив из 10 знаковых чисел( байт),
найти в массиве кол-во чисел, больших 12h и меньших 0Afh. Немного начал писать:
data segment
mass db 10,24,76,4,-34,81,-24,70,124,97
kol db ?
data ends
code segment
assume cs:code, ds:data
start: mov ax, data
mov ds, ax
lea bx, mass
mov cx, 10
mov ax, [bx]
|
![]() ![]() |
andriano |
![]()
Сообщение
#2
|
Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: ![]() ![]() ![]() |
Хочу заметить, что ВСЕ однобайтовые знаковые числа меньше 0AFh.
|
Rocket |
![]()
Сообщение
#3
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 306 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Вот что у меня получилось:
data segment
mass db 121, 29, 34, 44, 51, 26, 37, 48, 79, 105
kol db ?
data ends
code segment
assume cs:code, ds:data
start: mov ax, data
mov ds, ax
lea bx, mass
mov cx, 10
mov ax, [bx]
mov dx, 12h
beg: cmp [bx], dx
jl no
inc al
no: inc bx
loop beg
quit:
mov kol, al
mov ax, 4c00h
int 21h
code ends
end start
В чём ошибки? |
![]() ![]() |
![]() |
Текстовая версия | 28.07.2025 8:27 |