Advanced member
Статус: Не в сети Регистрация: 10.04.2003 Откуда: Москва
.data
DataA dd ? ; число A
DataC dd ? ; число С
DataD dd ? ; число D
acOut db 256 dup(?) ; буфер строки на вывод
patRes db "Результат вычислений по формуле (2*C-D/2+1)/(A*A+7) = %li",0 ; формат вывода
.code
mov ecx,DataC
shl ecx,1 ; 2*C
mov ebx,DataD
shr ebx,1 ; D/2
sub ecx,ebx ; 2*C-D/2
inc ecx ; 2*C-D/2+1 ---- первая скобка
mov eax,DataA
imul eax ; A*A
add eax,7 ; левая скобка
xchg eax,ecx ; переставить, ведь делить можно только eax
mov ebx,1
imul ebx ; фиктивная команда, только для создания в edx знака
div ecx ; все-таки ляпнул ошибку. Надо idiv ecx
; все вычислено, вывести
invoke wsprintf,addr acOut, addr patRes,eax
invoke MessageBox,NULL, addr acOut, NULL,MB_OK
invoke ExitProcess,0
Последний раз редактировалось serj 02.02.2006 13:37, всего редактировалось 1 раз.
imul ebx не обязательно.
Это всё изврат. Я бы сделал этот кусок так:
xchg eax,ecx ; переставить, ведь делить можно только eax
cdq
idiv ecx ; вот это - знаковое деление, div же - беззнаковое
invoke... классно нонче...
Раньше приходилось с BIOS заморачиваться... конвертить числа в числовой вид... Добавлено спустя 1 час, 53 минуты, 14 секунд А вообще, если переписать начальную часть (умножение) с современными формами imul, то и xchg eax,ecx можно выкинуть.
а причем тут биос ? Просто делили себе на основу исчисления каждый разряд и добавляли 30h.
Умный, да? А на экран выводить? Напрямую в B800 пихать не давали - принимать отказывались.
Настаивавших садили за Hercules и начинали принимать... Впрочем, у не поленившихся написать детект, таки принимали, но заморачиваться многим было лениво...
Member
Статус: Не в сети Регистрация: 07.03.2005 Откуда: Саратов
Народ помощь нужна... До вторника необходимо разработать VHDL модель универсального микропроцессора c расширенной разрядностью МПК БИС серии 583. . Вот(196kb) описание, помогайте чем можете , буду ОЧЕНЬ благодарен...
_________________ А теперь самое время найти себе злые травы и коренья, что бы скоротать вечер...
Member
Статус: Не в сети Регистрация: 20.09.2005 Откуда: Москва
Плиз помогите решить задачу по С++
Дана последовательность эмпирического ряда и шаг интервала группирования. Разработать программу по определению интегральной функции распределения по рассчитанной шкале интервалов (накапливаемое (суммированное) число попаданий в каждый интервал). Результат представить в виде таблицы и дискретного графика.
Member
Статус: Не в сети Регистрация: 08.12.2004 Откуда: Москва
Шмендальф задача по мат. статистике. если аналитическое решение готово, запрограммировать могу помочь.
пока условие понимаю так:
дан массив значений( вообще говоря случайных ). область возможных значений разбивается на отрезки с определенным шагом ( в условии - шкала, шаг интервала ). нужно подсчитать сколько значений попадает в каждый интервал и на основе этих данных сделать вывод какое это распределение (функция распределения). так?
Member
Статус: Не в сети Регистрация: 11.04.2004 Откуда: СПБ
Доброго.
Помогите решить задачку.
Есть выпуклый многоугольник ( n вершин) . Требуется разрезать его на k частей. Разрез должен представлять собой диагональ исходного многоугольника и разрезы не должны пересекаться нигде, кроме как в вершинах многоугольника. Требуется написать программу, которая по заданным n и k ( 1 <= k <= n, n>=3) выдаст количество способов разрезания.
Пример
4 2 ответ 2
6 4 ответ 14
3 2 ответ 0
вот задачка:
имеется n-угольник, его надо разрезать на k частей, причём так, чтобы линии разреза пересекались только в вершинах. требуется написать программу, которая посчитает кол-во способов разрезания. входные данные: 6 4, выходные: 14.
ЗЫЖ желательно на паскале, т.к. других языков не знаю...
Помогите пожалуйста сделать лабораторку. Ничего сложного вообщем-то, но у меня мозгов не хватает , нужно сделать программу перевода чисел из четверичной системы в восьмеричную на Си, может у кого завалялась?
Member
Статус: Не в сети Регистрация: 03.01.2005 Откуда: Из России
Народ...ПОИОГИТЕ чайнику с задачками...уж простенькие они,да что-то торможу я сам... Задачи надо выполнить на QBasic - про массивы.
№1 Все элементы одномерного массива умножить на 2 (размерность произвольная)
№2 В одномерном массиве положительные элементы умножить на 2 (размерность произвольная)
№3 Частные элементов массива возвести в квадрат (размерность произвольная)
№4Элементы массива стоящих на чётных местах умножить на 2 (размерность произвольная)
№5 Найти произведение второго и предпоследнего элемента массива (размерность произвольная)
Заранее спасибо...
Кто сделает - перед тем в долгу не останусь...Плизз
Member
Статус: Не в сети Регистрация: 03.01.2004 Откуда: Питер
t4k Млин, сам сейчас плохо соображаю после вчерашней пьянки. Короче самый безгеморойный вариант, это перевести сначала в двоичную, а потом уже в восьмеричную.
stepanov egor В принципе задачки не то чтобы простые, они элементарные! Может к вечеру полегчает - сделаю. Кста что значит частные элементов массива? Добавлено спустя 6 часов, 4 минуты, 3 секунды полегчало, сори не заметил, что
Цитата:
Задачи надо выполнить на QBasic
я его не знаю, да и вообще нет его у меня. Могу на паскале или си написать...
_________________ Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения