SHARE
TWEET

Untitled

a guest Dec 3rd, 2019 98 in 3 days
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .model small
  2. .stack 100h
  3. .data
  4.  s db 6 dup(' '),'$'        ;буфер в который будут помещаться символы
  5. .code
  6. ;start:         ; <-- нужна для совместимости с TASM
  7.  mov ax,@data
  8.  mov ds,ax
  9.  
  10.  mov cx,17      ; i от 1 до 17
  11.  mov ax,-1       ; <-- работайте с ax
  12.  mov dx,0       ;xor dx,dx быстрее
  13.  
  14. a1:
  15.  
  16.  add dx,ax      ; dx = dx + ax
  17.  inc dx         ;+2 значит +1
  18.  inc dx         ;и + 1 =)
  19.  inc ax         ; <-- работайте с ax!
  20.  loop a1        ; повторять пока cx не сатнет = 0
  21.  
  22.  mov ax,dx
  23. ;<-- здесь были линшие +2
  24. ;перевод в строку не трогал - оставил как был
  25. ;ИМХО можно было лучше
  26.  push ax
  27.  mov si,10
  28.  mov di,5
  29.  
  30. mov dx,0        
  31. cmp ax,0        ; проверяем знак числа
  32. jge axm         ; если число > 0, переходим на метку axm
  33. neg ax          ; изменить знак значения в регистре
  34. axm: div si
  35.  
  36.  
  37. add dl,30h
  38. mov s[di],dl
  39. xor dx,dx
  40. dec di
  41. cmp ax,0
  42. jne axm
  43.  
  44. pop ax
  45.  
  46.  
  47. cmp ax,0        ; проверяем знак числа
  48. jge axm1
  49. mov s[di],'-'   ; если число < 0, ставим знак отрицания
  50.  
  51. axm1: mov ah,9
  52. lea dx,s
  53. int 21h
  54.  
  55.  mov ax,4C00h ;<--лучше всё таки возвращать 0 код ошибки
  56.  int 21h
  57. ends
  58.  
  59. ;end start      ;<--Нужна для совместимости с TASM
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top