Вопрос № 147111: Здравствуйте! Нужно написать программу на ассемблере через Паскаль. Т.е ввод и вывод данных осуществить на Паскале, а код программы на ассемблере, с комментариями. В массиве Z[1..n] определить сумму нечетных чисел от последнего нулевого значен...Вопрос № 147188: Составить программу преобразования элементов исходного массива x[i] размерностью i=1..n в новый массив y[i] в соответствии с выражением: n=8 восьмиразрядные логические
переменные y[i]=00001111(0F) ^ x(шестнадцатиричное), ^ - побитовое исключающее ИЛИ...Вопрос № 147190: Уважаемые эксперты, вычислить значение выражения y=(A+B)*x*x ; A, B, x - однобайтные числа со знаком. Модель памяти small...Вопрос № 147191: Здраствуйте эксперты прокаментируйте задачу. Точнее надо сказать что делает каждая строчка. Составьте программу преобразования эле
ментов исходного массива Xi размерностью (i=1,2…n) n в новый массив Yi в соответствии с выражением: n=8 двухб...Вопрос № 147193: Уважаемые эксперты, помогите мне пожалуйста вот в каком вопросе: [c++]asm void Asm_Change(char *s) { _asm mov ebx,s; m1: _asm cmp [ebx],0; _asm je end; _asm mov dh,'a'; _asm cmp [ebx],dh; _asm jl m2; _asm mo...
Вопрос № 147.111
Здравствуйте! Нужно написать программу на ассемблере через Паскаль. Т.е ввод и вывод данных осуществить на Паскале, а код программы на ассемблере, с комментариями.
В массиве Z[1..n] определить сумму нечетных чисел от последнего нулевого значения до Z[n] и среднее арифметическое четных чисел до последнего нуля. Заменить этот последний нуль на среднее арифметическое.
Заранее благодарен вам!
Отправлен: 13.10.2008, 22:10
Вопрос задал: Denton87 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 9)
Отвечает: Boriss
Здравствуйте, Denton87! Не отвечаете, поэтому в приложении вариант с целыми числами (переставил местами ответы, но это, видимо не важно ) Ежели что - пишите в минифоруме
Приложение:
--------- Вывод - то место в тексте, где вы устали думать
Ответ отправил: Boriss (статус: Профессор) Россия, Саранск Организация: Мордовский госуниверситет, Саранск, Факультет Электронной Техники WWW:Программирование на Паскале ICQ: 320096696 ---- Ответ отправлен: 15.10.2008, 12:06 Оценка за ответ: 5 Комментарий оценки: Спасибо!
Вопрос № 147.188
Составить программу преобразования элементов исходного массива x[i] размерностью i=1..n в новый массив y[i] в соответствии с выражением: n=8 восьмиразрядные логические переменные y[i]=00001111(0F) ^ x(шестнадцатиричное), ^ - побитовое исключающее ИЛИ. С моделью памяти small.
Отправлен: 14.10.2008, 17:18
Вопрос задал: Dagra (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Boriss
Здравствуйте, Dagra! Вот, посмотрите в приложении Использую отображение с помощью процедуры, которой в стеке передается адрес массива Если что не понятно будет - пишите в минифоруме. Он работает и после ...
Приложение:
--------- Вывод - то место в тексте, где вы устали думать
Ответ отправил: Boriss (статус: Профессор) Россия, Саранск Организация: Мордовский госуниверситет, Саранск, Факультет Электронной Техники WWW:Программирование на Паскале ICQ: 320096696 ---- Ответ отправлен: 18.10.2008, 22:24 Оценка за ответ: 5
Вопрос № 147.190
Уважаемые эксперты, вычислить значение выражения y=(A+B)*x*x ; A, B, x - однобайтные числа со знаком. Модель памяти small
Отправлен: 14.10.2008, 17:24
Вопрос задал: Dagra (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Boriss
Здравствуйте, Владимир Д! Ну, вот так как в приложении, можно решить Вашу задачу
Приложение:
--------- Вывод - то место в тексте, где вы устали думать
Ответ отправил: Boriss (статус: Профессор) Россия, Саранск Организация: Мордовский госуниверситет, Саранск, Факультет Электронной Техники WWW:Программирование на Паскале ICQ: 320096696 ---- Ответ отправлен: 14.10.2008, 23:38
Вопрос № 147.191
Здраствуйте эксперты прокаментируйте задачу. Точнее надо сказать что делает каждая строчка.
Составьте программу преобразования элементов исходного массива Xi размерностью (i=1,2…n) n в новый массив Yi в соответствии с выражением: n=8 двухбайтных чисел без знака Yi=Xi +X(i+1)
Код программы: model small stack 256 .data x db 1,2,3,4,5,6,7,8,9 y dw 8 dup (?) .code main: mov ax, @data mov ds, ax mov cx, 8 xor ax,ax mov si,0 cycl:
add al,x[si] add al,x[si+1] mov y[si],ax xor ax,ax inc si loop cycl mov ax, 4c00h int 21h end main
Отвечает: Зенченко Константин Николаевич
Здравствуйте, Шептелуть Михайл Сергеевич!
Исправленный код с комментариями в приложении. У Вас ошибка в коде, при записи информации постоянно затирался старший бай от предыдущего результата.: Работая с индексным регистром SI, Вы не учли, что данные имеют различный размер (источник=байт, приемник= слово). Удачи!
Приложение:
--------- Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор) Украина, Киев Тел.: +380979536619 Адрес: Украина г.Киев ---- Ответ отправлен: 17.10.2008, 18:35
Вопрос № 147.193
Уважаемые эксперты, помогите мне пожалуйста вот в каком вопросе:
Вот фрагмент кода, теоретически он должен заменять
латинские буквы на Заглавные. Но он меняет любые на заглавную Z. Подскажите пожалуйста, где я ошибся и на что исправить. А то завтра сдавать всё это дело. Заранее благодарю!
Этот участок кода Вам лучше заменить на следующие строки: mov dh,0dfh and [ebx],dh Удачи!
--------- Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор) Украина, Киев Тел.: +380979536619 Адрес: Украина г.Киев ---- Ответ отправлен: 14.10.2008, 18:37 Оценка за ответ: 5 Комментарий оценки: Заработало. Премного Благодарен!
Отвечает: Airyashov
ясно как день mov ebx,s; cmp [ebx],0; je end;//если конец строки то выход mov dh,'a'; cmp [ebx],dh; jl m2; mov dh,'z'; cmp [ebx],dh; jg m2; mov dh,'A';//сюда попадаем если символ в диапазоне [a...z] mov [ebx],dh;//заменили симлов на 'A' mov dh,'Z'; mov [ebx],dh;//заменили симлов на 'Z' поэтому 'Z' и получатся m2: inc ebx;//перешли к следующему символу jmp m1; end:
Ответ отправил: Airyashov (статус: 9-ый класс)
Ответ отправлен: 15.10.2008, 08:21