Показать сообщение отдельно

  #8  
Старый 14.05.2009, 15:25
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме:
2868783

Репутация: 414


По умолчанию

Цитата:
Ребят нужна помощ знатаков асма -.-
Нужно написать процедуры для ввода с клавиатуры, аналоги подпрограмм ввода/вывода с Паскаля Read(ln) Write(ln)
когда то писал ввиде макросов, вот держи:
Код:
puts MACRO src         ; print string to STDOUT
 IFB <src>	                                     
  display "Use macro: puts <string>"
  EXITM								
 ELSE
  push ax
  push dx
  lea dx,src 						
  mov ah,09h						
  int 21h							
  pop dx
  pop ax
 ENDIF 								
ENDM
Код:
gets MACRO dst         ; read string from STDIN
local _read, _done                

 IFB <dst>                          
  display "Use macro: gets <dst>"   
  EXITM								
 ELSE 
   push ax
   push bx
   lea bx, dst            
    _read:     
      getc
      cmp al, 13
      je _done        
      mov [bx], al
      inc bx
      jmp _read
    _done:
      putc 0Ah
   pop bx
   pop ax   
 ENDIF   
ENDM

Последний раз редактировалось razb; 14.05.2009 в 15:32..
 
Ответить с цитированием