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

从F到0 - From F to 0

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

易语言MASM置入代码实现字节型、短整数型的 ROL循环左移 与 ROR循环右移 循环移位运算

[复制链接]
发表于 2022-12-13 21:57:25 | 显示全部楼层 |阅读模式
1.png
  1. .版本 2
  2. .支持库 spec

  3. .程序集 程序集1

  4. .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码


  5. _临时子程序 ()  ' 在初始化代码执行完毕后调用测试代码
  6. 返回 (0)  ' 可以根据您的需要返回任意数值

  7. .子程序 _临时子程序
  8. .局部变量 A, 字节型
  9. .局部变量 B, 字节型
  10. .局部变量 C, 短整数型
  11. .局部变量 D, 短整数型

  12. ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。
  13. A = 1
  14. B = 1
  15. .计次循环首 (8, )
  16.     A = 字节型_循环左移 (A, 1)
  17.     B = 字节型_循环右移 (B, 1)
  18.     调试输出 (A, B)
  19. .计次循环尾 ()
  20. 调试输出 ()
  21. C = 1
  22. D = 1
  23. .计次循环首 (16, )
  24.     C = 短整数型_循环左移 (C, 1)
  25.     D = 短整数型_循环右移 (D, 1)
  26.     调试输出 (C, D)
  27. .计次循环尾 ()

  28. .子程序 字节型_循环左移, 字节型, 公开
  29. .参数 欲移动的字节, 字节型
  30. .参数 欲移动的位数, 字节型

  31. 置入代码 ({ 81, 138, 109, 8, 138, 77, 12, 210, 197, 15, 182, 197, 89, 201, 194, 8, 0 })
  32. ' push ecx
  33. ' mov ch,[ebp+8]
  34. ' mov cl,[ebp+12]
  35. ' rol ch,cl
  36. ' movzx eax,ch
  37. ' pop ecx
  38. ' leave
  39. ' retn 8
  40. 返回 (0)

  41. .子程序 字节型_循环右移, 字节型, 公开
  42. .参数 欲移动的字节, 字节型
  43. .参数 欲移动的位数, 字节型

  44. 置入代码 ({ 81, 138, 109, 8, 138, 77, 12, 210, 205, 15, 182, 197, 89, 201, 194, 8, 0 })
  45. ' push ecx
  46. ' mov ch,[ebp+8]
  47. ' mov cl,[ebp+12]
  48. ' ror ch,cl
  49. ' movzx eax,ch
  50. ' pop ecx
  51. ' leave
  52. ' retn 8
  53. 返回 (0)

  54. .子程序 短整数型_循环左移, 短整数型, 公开
  55. .参数 欲移动的短整数, 短整数型
  56. .参数 欲移动的位数, 字节型

  57. 置入代码 ({ 81, 102, 139, 69, 8, 138, 77, 12, 102, 211, 192, 15, 183, 192, 89, 201, 194, 8, 0 })
  58. ' push ecx
  59. ' mov ax,[ebp+8]
  60. ' mov cl,[ebp+12]
  61. ' rol ax,cl
  62. ' movzx eax,ax
  63. ' pop ecx
  64. ' leave
  65. ' retn 8
  66. 返回 (0)

  67. .子程序 短整数型_循环右移, 短整数型, 公开
  68. .参数 欲移动的短整数, 短整数型
  69. .参数 欲移动的位数, 字节型

  70. 置入代码 ({ 81, 102, 139, 69, 8, 138, 77, 12, 102, 211, 200, 15, 183, 192, 89, 201, 194, 8, 0 })
  71. ' push ecx
  72. ' mov ax,[ebp+8]
  73. ' mov cl,[ebp+12]
  74. ' ror ax,cl
  75. ' movzx eax,ax
  76. ' pop ecx
  77. ' leave
  78. ' retn 8
  79. 返回 (0)
复制代码

相关帖子

您需要登录后才可以回帖 登录 | 注册已关闭

本版积分规则

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

腾讯云安全认证

GMT+8, 2024-4-20 15:38 , Processed in 0.626036 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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