设为首页收藏本站淘宝杂货铺

从F到0 - From F to 0

 找回密码
 注册已关闭
搜索
查看: 2206|回复: 1
收起左侧

C51汇编实现将字节的二进制倒序/颠倒排列的实现方法

[复制链接]
发表于 2018-3-5 09:04:17 | 显示全部楼层 |阅读模式

  1. MOV A,#4DH        ;处理前:0x4D(01001101)
  2. CALL INV_A        ;处理后:0xB2(10110010)
  3. SJMP $
  4. INV_A:                ;将A寄存器的二进制高低位颠倒 如0x01 处理后是0x80。
  5. PUSH 32                ;字节地址0x20(32)可以位寻址,压入堆栈保护现场。
  6. PUSH 33 ;        ;字节地址0x21(33)也可以位寻址,存放进位标志C。
  7. MOV 33.0,C        ;将进位标志C存入地址33的第0位,(最大7位),此处的.0不能省略,否则按位地址寻址的。
  8. MOV C,ACC.7        ;将A寄存器的第7位放入C中
  9. MOV 32.0,C        ;将C位标志放入地址32的第0位,以此类推。
  10. MOV C,ACC.6
  11. MOV 32.1,C
  12. MOV C,ACC.5
  13. MOV 32.2,C
  14. MOV C,ACC.4
  15. MOV 32.3,C
  16. MOV C,ACC.3
  17. MOV 32.4,C
  18. MOV C,ACC.2
  19. MOV 32.5,C
  20. MOV C,ACC.1
  21. MOV 32.6,C
  22. MOV C,ACC.0
  23. MOV 32.7,C
  24. MOV A,32        ;地址32的值送A寄存器。
  25. MOV C,33.0        ;将地址33的第0位放入进位标志C
  26. POP 33                ;地址33是后压入堆栈的,所以先弹出。
  27. POP 32                ;地址32的堆栈弹出,恢复现场。
  28. RET
  29. END

复制代码

发表于 2018-3-5 09:30:32 | 显示全部楼层
哦,原来如此。
您需要登录后才可以回帖 登录 | 注册已关闭

本版积分规则

QQ|手机版|Archiver|从F到0 ( 蒙ICP备17002595号-1 )
蒙公网安备15010402000325号

腾讯云安全认证

GMT+8, 2024-3-28 23:17 , Processed in 0.415023 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表