1.伪指令PROC用于定义过程(PROC来自:1.PROCESS 2.PROCEDURE 两个单词的缩写)
用法实例:{
sample PROC
指令1
指令2

指令n
ret
sample ENDP
}
2.伪指令INVOKE用于:调用过程并传递相应参数
用法实例:{
INVOKE sample ,参数1,参数2,…,参数n
}
3.CALL CRLF指令,CRLF是Carriage-Return Line-Feed的缩写,意思是回车换行。
4.edx寄存器,多功能寄存器,用于储存数据,传递参数
对于传递参数功能的例子:
{
mov edx,参数1
call 函数1
}
5.WriteString函数,作用:向设备写入流。
ResdString函数,作用:从设备读出流。
6.代码
{

KEY=239
BUFMAX=128

.data
sPrompt BYTE “Enter the plain text:”,0
sEncrypt BYTE “Cipher text: “,0
sDecrypt BYTE “Decryted: “,0
buffer BYTE BUFMAX+1 DUP(0)
bufSize DWORD ?

.code
main PROC

call InputString
call TranslateBuffer
mov edx,offset sEncrypt
call DisplayMessage
call TranslateBuffer
mov edx,offset sDecrypt
call DisplayMessage
exit

main ENDP

InputString PROC

pushad
mov edx,offset sPrompt
call WriteString
mov ecx,BUFMAX
mov edx,offset buffer
call ReadString
mov bufSize,eax
call Crlf
popadret

InputString endp

TranslateBuffer PROC

Pushad
mov ecx,bufSize
mov esi,0F1:
xor buffer[esi],KEY
inc esi
loop F1
popadret

TranslateBuffer endp

DisplayMessage PROC

pushad
call WriteString
mov edx,offset buffer
call WriteString
call Crlf
call Crlf
popadret

DisplayMessage endp
END main
}

7.测试
{

}

xor指令加解密(笔记)相关推荐

  1. xor java_java基于密匙的xor加解密

    package iminto.util.common; import java.io.IOException; import java.security.NoSuchAlgorithmExceptio ...

  2. Crypto++入门学习笔记(DES、AES、RSA、SHA-256)(加解密)

    转自http://www.cppblog.com/ArthasLee/archive/2010/12/01/135186.html 最近,基于某些原因和需要,笔者需要去了解一下Crypto++库,然后 ...

  3. linux加解密指令,Linux加解密支持模块代码总体描述

    原标题:Linux加解密支持模块代码总体描述 1.3.4. Linux内核对加密的特性支持分析Linux内核加密特性,就要要根据不同算法所表现出来的特征进行总结.以下通过分组密码.Hash函数.随机数 ...

  4. 【加解密学习笔记:第一天】操作系统基础知识

    加解密相关系统基础知识 Unicode编码格式 Unicode编码中使用2字节对字符进行编码,对ASCLL码的支持通过愿为不变,高位补零实现 一个字有2字节,Intel在存入储存器时低位入低地址,高位 ...

  5. B站小迪安全笔记第十七天-SQL注入之二次加解密,dns等注入

    加解密,二次,DNSlog 注入 注入原理,演示案例,实际应用(中转注入) DNSlog:解决了盲注不能回显数据,效率低的问题 http://127.0.0.1:8080/sqlilabs/less- ...

  6. 数据採集器服务——Socket(今天才发现AES加解密代码跟贴的时候不一样,貌似乱码,不知什么情况)...

    近期刚做的一个项目.关于 Socket TCP 通信. 需求方提供了一个 ARM 机器,及数据採集器,须要我做一个服务端与数据採集器进行交互. 目的: 数据採集器:定时将读取到的数据发送到服务端. 服 ...

  7. Config配置文件的加解密

    在Web应用程序中,一般的配置信息都是放在Web.config文件中,包括数据的连接字符串.但是这些数据都是以明文方式保存,在一定程度上有着不安全的隐患.         还好,Visual Stud ...

  8. ffmpeg-简单AES加解密记录

    分享一下视频分段缓存技术之中的一种格式m3u8.据说是苹果开发的,前途无量. 使用起来确实蛮方便,可以自己集成做成播放器.本文暂时只记录简单的加解密和播放. 观摩这项技术时参考的几篇文章分享如下: 使 ...

  9. Vue学习(入门实例、常用指令)-学习笔记

    文章目录 Vue学习(入门实例.常用指令)-学习笔记 实例 常用指令 v-on v-bind v-for v-html v-if event v-model 双向数据绑定实现 - defineProp ...

最新文章

  1. 德国最有影响力的数学家(上)
  2. R语言Apriori算法关联规则挖掘:使用interestMeasure函数评估挖掘到的规则(包括覆盖率(coverage)和FishersExactTest)、置信度最高的五条规则(top five
  3. 【控制】《多智能体系统的协同群集运动控制》陈杰老师-第6章-参数不确定的高阶非线性多智能体系统一致性控制
  4. php不缓存直接输出,如何在PHP中禁用输出缓冲
  5. python中hashmap的方法_如何为Java的HashMap模拟Python的dict的“ items(...
  6. NIO学习–核心概念与基本读写
  7. 函数接口– Java 8中java.util.function包中的函数接口
  8. thinkphp仿百度文库网站源码
  9. 网络协议栈深入分析(三)--BSD socket和传输层sock
  10. spring集成quartz框架
  11. oracle把一列更新为空,ORA-01439:要更改数据类型,则要修改的列必须为空
  12. vmware下ubuntu不能上网 = 恢复默认虚拟网络
  13. 转换pfb/pfm字体格式为otf
  14. pyqt+pyqtgraph+lka(界面制作)
  15. STM32入门指南(0)—配置开发环境
  16. 数学建模常用算法—灰色预测
  17. 射击类游戏的制作思路
  18. 全球与中国3D透视导航技术市场现状及未来发展趋势(2022)
  19. vue 视频播放插件VideoPlayer
  20. 如何避免Excel转PDF后内容少了一半

热门文章

  1. python pyqt5 股票分时_pythonpyqt5股票分时:股票风险与提示_XAC配资之家
  2. 海康java版本SDK中jna.jar的说明
  3. kafka-eagle-2.0.1安装及使用(超详细)
  4. 那些让人动容的美食文案
  5. 子元素自动撑开父元素空间
  6. C++基础知识—— 基本输入输出
  7. 程序员的12条经营分享
  8. zzulioj1008: 美元和人民币
  9. 苹果cmsV10 会员收费设置 会员VIP权限设置教程
  10. 【数学计算】点乘/点积/内积/数量积/叉乘/外积/叉积/向量积