秋夜雨巷

汇编语言-09转移指令的原理

定义 可以修改IP,或同时修改CS和IP的指令统称为转移指令。概括地讲,转移指令就是可以控制CPU执行内存中某处代码的指令。 分类 8086CPU转移行为分类 只修改IP时,称为段内转移,比如:jmp ax。 同时修改CS和IP时,称为段间转移,比如:jmp 1000:0。 转移指令对IP的修改范围 短转移IP的修改范围为-128~127。…

秋夜雨巷

汇编语言-08数据处理的两个基本问题

数据处理的两个基本问题 定义的描述性符号: reg和sreg,reg表示一个寄存器,用sreg表示一个段寄存器。 reg的集合包括:ax、bx、cx、dx、ah、al、bh、bl、ch、cl、dh、dl、sp、bp、si、di;sreg的集合包括:ds、ss、cs、es。 bx、si、di和bp 在8086CPU中,只有这4个寄存器可以用在”[…]”中来进行内存单元的寻址。  在[...]中,这4个寄存器可以单个出现,或只能以4种组合出现:bx和si、bx和di、bp和si、bp和di。比如: 只要在[...]中使用寄存器bp,而指令中没有显性地给出段地址,段地址就默认在ss中。比如: 机器指令处理的数据在什么地方 绝大部分机器指令都是进行数据处理的指令,处理大致可分为3…

秋夜雨巷

汇编语言-07灵活定位内存地址

and和or指令 and 指令:逻辑与指令,按位进行与运算。 通过该指令可将操作对象的相应位设为0,其他位不变。 or指令:逻辑或指令,按位进行或运算。 通过该指令可将操作对象的相应位设为1,其他位不变。 ASCII码 信息存储在计算机中,要对其进行编码,将其转化为二进制信息进行存储。而计算机要将这些存储的信息再显示给我们看,就要再对其进行解码。只要编码和解码采用同样的规则,就可以将人能理解的信息存入到计算机,再从计算机中取出。 世界上有很多编码方案,有一种方案叫做ASCII编码,是在计算机系统中通常被采用的。简单地说,所谓编码方案,就是一套规则,它约定了用什么样的信息来表示现实对象。比如说,在ASCII编码方案中,用61H表示“a”,62H表示”b”。一种规则需要人们遵守才有意义。 以字符形式给出的数据…

秋夜雨巷

SpringBoot替换启动Banner

banner.txt 在SpringBoot项目的resources目录下新建一个banner.txt文本文件,然后将启动Banner粘贴到此文本文件中,启动项目即可。 在线制作banner http://patorjk.com/software/taag/ https://www.bootschool.net/ascii http://www.network-science.de/ascii/ https://www.degraeve.com/img2txt.php 测试图片:https://uploadfile.huiyi8.com/2014/0719/20140719100527496.jpg  

秋夜雨巷

汇编语言-06包含多个段的程序

  0:200~0:2FF是相对安全的,可这段空间的容量只有256个字节,如果我们需要的空间超过256个字节该怎么办呢? 在操作系统的环境中,合法地通过操作系统取得的空间都是安全的,因为操作系统不会让一个程序所用的空间和其他程序以及系统自己的空间相冲突。在操作系统允许的情况下,程序可以取得任意容量的空间。 程序取得所需空间的方法有两种,一是在加载程序的时候为程序分配,再就是程序在执行的过程中向系统申请。 加载程序的时候为程序分配空间,例如程序在加载的时候,取得了代码段中的代码的存储空间。 若要一个程序在被加载的时候取得所需的空间,则必须要在源程序中做出说明。通过在源程序中定义段来进行内存空间的获取。 代码段中使用数据 编程计算以下8个数据的和,结果存在ax寄存器中:0123h、0456h、0789h、0abch、0defh、0fedh、0cbah、0987h 在程序的第一条指令的前面加上了一个标号start,而这个标号在伪指令end的后面出现。可见end除了通知编译器程序结束外,还可以通知编译器程序的入口在什么地方。 assume…