Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2015, 11:36   #1
WeaKill47
 
Регистрация: 06.10.2014
Сообщений: 4
Вопрос mov result, ax [error]

Код:
format mz

call start
call print
call exit
          
start:
  mov bp,sp     
  mov cx,4                         
  cycl:
    mov ah,3
    add al,ah
  loop cycl    
  xor ah,ah
  push ax
  mov result, ax    ;ошибка
  mov sp,bp   
ret  
    
exit:
  mov ax, 4C00h    ; PROGRAM HAS RETURNED CONTROL TO THE OPERATING SYSTEM
  int 21h   
ret

print:
  mov bx,cs
  mov ds,bx
  mov dx,result
  mov ah,09h
  int 21h
ret


a1:      db "Hello, World!$"       
result:  dw 0

Последний раз редактировалось WeaKill47; 08.06.2015 в 11:45.
WeaKill47 вне форума Ответить с цитированием
Старый 08.06.2015, 13:10   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
mov [result], ax    ;ошибка
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.06.2015, 13:48   #3
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

1. по-сути, RESULT должна быть переменной, а у тебя определена как метка (с двоеточием в конце).
2. после цикла AL = 0Ch, а ты выводиш это значение как текст.
3. зачем значение AX отправил в стек, если его потом не снимаеш от туда?
4. "Hello World" вообще стоит для массовки и к нему вообще никто не обращается..

Одним словом - код кривой. Напиши чё хочеш сделать...
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 08.06.2015, 15:12   #4
WeaKill47
 
Регистрация: 06.10.2014
Сообщений: 4
По умолчанию

я хочу занести в result полученное значение, то которое находиться al и в стеке оно находиться но вот на экран как это вывести,??
WeaKill47 вне форума Ответить с цитированием
Старый 08.06.2015, 15:59   #5
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

..код на FASM'e.
Выводит на экран число в 10-тичной системе счисления. Если нужно вывести в другой CC, то нужно указать систему в регистре BX функции "PRINT":

Код:
format mz
org 100h

call start
call print
call exit
          
start:
  mov  ah,9
  mov  dx,message
  int  21h

  xor ax,ax
  mov cx,4
  cycl:
    mov ah,3
    add al,ah
  loop cycl
  xor ah,ah
  mov word[result],ax        ; не понятно, зачем здесь переменная
ret  
    
exit:
  xor ax,ax
  int 16h
  mov ax,4C00h
  int 21h   
ret

;----------------------; универсальная функция
                       ; для вывода на экран чисел в любой системе счислений.
print:                 ; Число в AX; система счисления в BX
  mov ax,word[result]
  mov bx,10            ; выводим в 10-тичном виде
digitHEX:
  xor  cx,cx
isDiv:
  xor  dx,dx
  div  bx
  push dx
  inc  cx
  or   ax,ax
  jnz  isDiv
isOut:
  pop  ax
  cmp  al,9
  jle  noHex
  add  al,7
noHex:
  add  al,30h
  int  29h
  loop isOut
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
result   dw 0
message  db 13,10,'Hello, World!'
         db 13,10,'******************'
         db 13,10,'AX = $'
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
MOV Алексей Супрун Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 29.05.2013 23:32
mov bx,0 pinkiller Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 16.04.2012 19:07
Дизассемблер MOV zipwind Помощь студентам 2 12.05.2011 23:57
error result from cl.exe Umnik1 Общие вопросы C/C++ 7 09.02.2009 20:50
Вопрос по Result Dogmat Помощь студентам 1 14.07.2008 17:09