На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Перед отправкой сообщения внимательно прочтите правила раздела!!!
1. Запрещается обсуждать написание вирусов, троянов и других вредоносных программ!
2. Помните, что у нас есть FAQ раздела Assembler и Полезные ссылки. Посмотрите, возможно, там уже имеется решение вашего вопроса.

3. Настоятельно рекомендуем обратить особое внимание на правила форума, которые нарушаются чаще всего:
  3.1. Заголовок темы должен кратко отражать её суть. Темы с заголовками типа "Срочно помогите!" или "Ассемблер" будут отправляться в Корзину для мусора.
  3.2. Исходники программ обязательно выделяйте тегами [code]...[/code] (одиночные инструкции можно не выделять).
  3.3. Нежелательно поднимать старые темы (не обновлявшиеся более года) без веской на то причины.

Не забывайте также про главные Правила форума!

Добро пожаловать и приятного вам общения!!! ;)
 
Модераторы: Jin X, Qraizer
Страницы: (3) 1 2 [3]  все  ( Перейти к последнему сообщению )  
> Перевод целых чисел из десятичной в восьмиричную систему счисления , Перевод целых чисел из десятичной в восьмиричную систему счисления
    Нет, про UML ничего не знаю. Попробуй погуглить, пояндексить или порамблерить. Ещё существует "студенческий коллективный разум" внутри собственной группы или потока ;) .
      Я обучаюсь заочно, так что студенческий коллективный разум внутри собственной группы или потока - это исключено ;)
        Привет, Павел! У меня возникли сложности при написании лабораторной работы. У меня задание: найти произведение элементов массива, и максимальное значение.
        Работаю я в TASM, а в учебнике нашла похожие примеры, но для MASM. Вобщем кое-как слепила из-этих примеров себе лабораторную. Но при компилировании возникали ошибки, так как Tasm не понимал команды Masm. Пыталась изменять команды, чтоб исходник компилировался в TASM, но все время возникают ошибки.
        Павел, помоги мне подправить этот исходник. Очень тебе прошу :rolleyes: !
        ExpandedWrap disabled
          ; Подготовка программы:
          ; MASM /Z /ZI /N P, P, P;
          ; LINK /CO P,P;
          ; Програмные мтроки
          text    segment 'code'
                  assume  cs:text, ds:data
          ; Определения
          count = 80;
          KEYBOARD STRUCT
              maxInput    BYTE    count   ; Максималтный размер буфера
              inputCount  BYTE    ?       ; Количество введеных символов
              buffer      BYTE    count DUP(?)    ; Введенные символы
          KEYBOARD ENDS
           
          myproc  proc
              mov     AX,data        
              mov     DS,AX
          ; Очистка экрана
              mov     ax,0003h
              int     10h
          ; Читает строку символов из стандартного устройства ввода
              mov     ah,0Ah
              mov     dx,OFFSET kybdData
              int     21h
          ; Перемещение курсора в начало следующец строки
              mov     ah,02h
              mov     dl,0Ah
              int     21h
              mov     bl,kybdData.inputCount
              mov     dx,OFFSET kybdData
              add     dx,2
              add     dx,bx
              mov     di,dx
              mov     byte ptr [di],'$'
          ; Выводит строку, оканчивающуюся символом "$", на стандартное устройство вывода
              mov     ah,09h
              mov     dx,OFFSET kybdData
              add     dx,2
              int     21h
          ; Добуток елеиентів масиву
              mov     si,OFFSET arrayB
              mov     cx,(LENGTHOF arrayB)-1
              mov     ax,[si]
          L1:
              add     si,2        ; Поскольку массив arrayB типа WORD
              mov     bx,[si]
              mul     bx          ; В ax будет гаходится результат умножения
              loop    L1
          ; максимальне значення масиву
              mov     si,OFFSET arrayB
              mov     cx,(LENGTHOF arrayB)-1
              mov     ax,[si]
              .WHILE  cx > 0
              add     si,2        ; Поскольку массив arrayB типа WORD
              dec     cx
              .IF     ax < [si]
              mov     ax,[si]
          ;   .ELSE  
          ;   mov     bx,ax
              .ENDIF
              .ENDW
          ; Завершим программу
              mov     AX,4C00h
              int     21h
          myproc  endp
          text    ends
           
          ; Поля данных
              data    segment
              kybdData KEYBOARD <>
              arrayB  WORD        2, 1, 1, 1, 1, 1, 3, 1, 1, 5, 1
              data    ends
              stack   segment     para stack 'stak'
                      db          128 dup (?)
              stack   ends
                      end         myproc
          Привет, Deffi

          Вообще-то, это уже вопрос для отдельной темы.
          Поэтому отвечу в приват.
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:
          Страницы: (3) 1 2 [3]  все


          Рейтинг@Mail.ru
          [ Script execution time: 0,0318 ]   [ 15 queries used ]   [ Generated: 16.06.24, 06:50 GMT ]