Действия с BCD числами (ввод, деление, вывод) - Assembler

Узнай цену своей работы

Формулировка задачи:

Всем здрасти! Помогите с составлением программы. Вот текст задачи: задать с клавиатуры два BCD числа. Одно число двухразрядное, другое одноразрядное. Выполнить деление этих чисел(1 на 2), предусмотрев 1-Вывод приглашения к заданию чисел 2-Вывод результата на экран. Мы застреваем на вводе, т.к. нам дали только теорию и сразу отправили на практику, ну и нифига не понимаем. Просьба помоч :3

Решение задачи: «Действия с BCD числами (ввод, деление, вывод)»

textual
Листинг программы
  1. include io.asm
  2. Sseg segment stack
  3. db 256 dup (?)
  4. Sseg ends
  5.  
  6. Dseg segment
  7. a db 2 dup (?)
  8. b db (?)
  9. c db (?)
  10.  
  11. str1 db 0dh,0ah,'‚Введите а:$'
  12. str2 db 0dh,0ah,'‚Введите b:$'
  13. rez  db 2 dup (?)
  14. str3 db 0dh,0ah,'Результат:$'
  15. Dseg ends
  16.  
  17. Cseg segment
  18. ASSUME CS:Cseg,DS:Dseg,SS:Sseg
  19. start:
  20. MOV AX,Dseg
  21. MOV DS,AX
  22. MOV AX,0
  23.  
  24. LEA DX,str1
  25. MOV AH,9H
  26. INT 21H
  27. MOV SI,1
  28. INCH a[SI]
  29. SUB a[SI],30h
  30. DEC SI
  31. INCH a[SI]
  32. SUB a[SI],30h
  33.  
  34. LEA DX,str2
  35. MOV AH,9h
  36. INT 21h
  37. inch b
  38. sub b,30h
  39.  
  40. MOV SI,0
  41. MOV AH,a[SI]
  42. INC SI
  43. MOV AL,a[SI]
  44. aad
  45. DIV b
  46. MOV c,AL
  47.  
  48. mov DX,offset str3
  49. outstr
  50. mov SI,0
  51. mov CX,2
  52.  
  53. m1:add c,30h
  54. outch c
  55.  
  56.    
  57. finish
  58. Cseg ENDS
  59. end start

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.818 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут