Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Assembler] Цикл со счетсчиком 
V
    Опции темы
Lizyna
  Дата 24.9.2009, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 24.9.2009

Репутация: нет
Всего: нет



Написать программу на Ассемблере для вычисления: P+(p+1)+(p+2)+…+(p+n)=(n+1)(2p+n)/2 (при заданном n=7,p=3)
Вычислить в цикле левую сумму. Убедиться в равенстве сторон. Вывести оба значения в разных регистрах (Значение по формуле – в bx, значение суммы - в di).

PM MAIL   Вверх
dumb
Дата 24.9.2009, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 6
Всего: 158



Для домашних заданий, курсовых, существует "Центр Помощи".

Тема перенесена! 
PM MAIL   Вверх
Xshot1
Дата 24.9.2009, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 11.9.2009

Репутация: нет
Всего: нет



Код



CSEG segment
org 100h

Begin: 

; -====\\    
; -====  Raschet summi
; -====//

    mov bx,0   ;\\
    mov dx,0   ;  > Obnulim registri navsyakiy sluchay
    mov di,0   ;//
    mov al,3   ;     po zadaniyu p=3, teper "p" u nas v vladshem bite registra AX
    mov cl,8   ;                 n=7, pochemu - 8 dumayu razbereshsya  
    
Summa:
          mov dl,bl ;  \\
          add dl,al ;    \  Sam cikl summirovania
          inc bl    ;    /
          add di,dx ;  //
    loop Summa                   
    
; -====\\    
; -====  Raschet formuli
; -====//

    mov cl,7     ;\\
    mov al,3     ;  vvodim znacheniya peremennih
    mov ch,2     ;//
    mul ch       ; 2*p
    add al,cl    ; (2*p+n)  skladivaem
    inc cl       ;  (n+1), prosto  srazu uvelicheli na 1, mogno bilo comandoy ADD napisat po drugomu
    mul cl       ;  (n+1)*(2*p+n) peremnojili 2 scobki
    
    
    div ch       ;   razdelili na 2
    mov bl,al    ;   sohranili znachenie v BL (BX) po usloviyu zadachi
   
; -====\\    
; -====  Sravnivaem Summ i Formuli
; -====//
                
    cmp bx,di
    jnz Neravni ; esli ne ravni-prigaem na metku Neravni
    mov ah,9                ; esli ravni vivodim soobshenie
    mov dx,offset Mes       ; chto vse OK 
    int 21h   
    
    
 exit:                   ; i pokidaem etot mir
    mov ah,0
    int 16h
    int 20h   
    
   Neravni:      ; nu suda popadem ne v etoy jizni
   jmp exit 
         
 Mes db 'Resultat raven  bx=di=52$'          
           
CSEG ends
end Begin



Если что, сразу говорю что я чайник, но вроде написал правильно, по крайней мере работает,  проверил.  smile 
PM MAIL   Вверх
Lizyna
  Дата 25.9.2009, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 24.9.2009

Репутация: нет
Всего: нет



 smile спасибки! ДВА  я в унвере с преподом также решила! smile 
PM MAIL   Вверх
Lizyna
  Дата 25.9.2009, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 24.9.2009

Репутация: нет
Всего: нет



Ребят еще такой вопрос...Если можно канешно: 


Дана матрица 5х5. Найти наименьшее из значений элементов побочной диагонали из двух соседних с ней линий.

Это сообщение отредактировал(а) Lizyna - 27.9.2009, 12:18
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0413 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.