Даны два числа в двоичном виде - Assembler (223446)

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

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

Помогите пожалуйста в ассемблере. Даны два числа в двоичном виде. Поменять местами 7,6,5,1- разряды первого числа с 0,2,3,4 разрядами второго числа соответственно. Результаты логически сложить и умножить на 8

Решение задачи: «Даны два числа в двоичном виде»

textual
Листинг программы
  1. .model small
  2. .386
  3.  
  4. .data
  5. a db 11011101b
  6. b db 11101011b
  7.  
  8. .stack
  9. db 255 dup(?)
  10.  
  11. .code
  12. start:
  13. mov ax,@data
  14. mov ds,ax
  15.  
  16. xor ah,ah
  17. mov al,a
  18. and al,00011101b
  19.  
  20. xor bh,bh
  21. mov bl,b
  22. and bl,00011101b
  23. shl bx,4
  24. ror bh,5
  25. shl bx,1
  26. ror bh,2
  27. shl bx,1
  28. ror bh,2
  29. shl bl,1
  30. shl bx,1
  31. ror bh,1
  32. xchg bh,bl
  33.  
  34. or al,bl   
  35. mov dl,al   ;замена первого числа
  36.  
  37. xor bh,bh
  38. mov bl,b
  39. and bl,11100010b
  40.  
  41. xor ah,ah
  42. mov al,a
  43. and al,11100010b
  44. shl ax,1
  45. ror ah,3
  46. shl ax,1
  47. ror ah,2
  48. shl ax,1
  49. ror ah,2
  50. shl al,3
  51. shl ax,1
  52. ror ah,1
  53. shr ah,3
  54. xchg ah,al
  55.  
  56. or bl,al    ;замена второго числа
  57.  
  58. or bl,dl    ;логическое сложение результатов
  59.  
  60. shl bx,3    ;умножение на восемь
  61.  
  62. mov ax,bx
  63.    
  64. mov ah,4Ch
  65. mov al,00h
  66. int 21h
  67. end start

Объяснение кода листинга программы

Код выполняет следующие действия:

  1. Задаёт два числа в двоичном виде в переменные a и b.
  2. Выполняет операции по замене первого и второго числа на их эквиваленты с заданными битами.
  3. Выполняет логическое сложение результатов замены первого и второго числа.
  4. Выполняет умножение результата на восемь.
  5. Выводит результат на экран.

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


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

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

6   голосов , оценка 4.167 из 5

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

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

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