Страница 1 из 1
[assembler] Одномерный однобайтовый массив
Добавлено: 01 янв 2007, 18:27
azze
В одномерном однобайтовом массиве A(15) найти среднее арифметическое эл-тов массива(частное и остаток)
На С++ решил бы запросто, но АСМ это совсем другое, не лажу с ним , помогите с задачкой! Спасибо заранее!
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 02 янв 2007, 11:54
Ramzey
Вот решил вспомнить молодось. Может не совсем красиво, но...
Если че не ясно пиши.
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 02 янв 2007, 17:09
azze
Все замечательно решили. Спасибо огромное! Но проблемка в том, что учитель не поверит, что это Я решил эту задачу, слишком огромно получилось, думаю если массивы уже будут заданы, всмысле не надо в самой проге их задавать, прога будет намного проще и яснее. Я не заставляю вас это сделать, а прошу, если будет время, упростить. Ещё раз спасибо!!!
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 02 янв 2007, 20:29
Ramzey
по-моему 356 байт это не так уж и много.
Ладно уберу ввод массива( - самое основное!)
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 02 янв 2007, 20:52
Ramzey
вот без ввода
Код: Выделить всё
.model tiny
.code
.data
ORG 100h
cLenArr equ 15
BEGIN:
push cs
pop ds
xor ax, ax
mov cx, cLenArr
lea bx, arr
xor dh, dh
SolveSum:
mov dl, byte ptr[bx]
add ax, dx
inc bx
loop SolveSum
mov bx, cLenArr
div bl ;vychisliaem sr. arifm.
lea bx, chastnoe ;perevodim chastnoe
mov dh, ah ;sohr ostatok
mov cx, 2 ;cikl iz 2 raz
nextdiv:
xor ah, ah
div Hundred ;vydeliaem sotni
mov byte ptr[bx], al
shr ax,8
div Ten ;desiatki
mov byte ptr[bx+1], al
mov byte ptr[bx+2], ah
mov al, dh
lea bx, ostatok ;perevodim ostatok
loop nextdiv
mov cx, 3
ascii1:
mov bx, cx
add byte ptr [ostatok+bx-1], 30h ;ostatok v ascii
loop ascii1
mov cx, 3
ascii2:
mov bx, cx
add byte ptr [chastnoe+bx-1], 30h ;chastnoe v ascii
loop ascii2
mov ah, 9
lea dx, strchast
int 21h
mov ax,4c00h
int 21h
;nash massiv
arr db 255,213,12,44,55,99,23,32,123,43,34,234,129,1,10
strchast db 'Chastnoe='
chastnoe db '000',13,10
strost db 'Ostatok='
ostatok db '000',13,10,'$'
Ten db 10
Hundred db 100
END BEGIN
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 03 янв 2007, 11:52
azze
Задача успешно решена, благодарю вас! НО скоро задам другую задачку, она попроще, ждите...

Вспомните всю молодость :d
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 26 дек 2017, 16:20
sweet03
Ramzey писал(а):Вот решил вспомнить молодось. Может не совсем красиво, но...
Если че не ясно пиши.
Можно как-нибудь посмотреть решение с вводом? Не открывается архив, к сожалению. Спасибо заранее.
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 26 дек 2017, 16:35
Ramzey
Оба-на, я еще здесь зареген!!! Неожиданно... 11 лет прошло.
Re: [assembler] Одномерный однобайтовый массив
Добавлено: 26 дек 2017, 19:51
sweet03
Ramzey писал(а):Оба-на, я еще здесь зареген!!! Неожиданно... 11 лет прошло.
11 лет, а проблемы студентов все те же

Что с задачей, можно как-то воссоздать?