
汇编语言
文章平均质量分 74
base
Orange#
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【汇编语言】9~x章
目录转移指令的原理 操作符offset jmp指令 jmp指令原理 jcxz、loop 根据位移进行转移的好处 CALL和RET指令 ret 和 retf call ret 和 call 搭配使用 mul指令 模块化设计子程序 标志寄存器 ZF,零标志位 PF,奇偶标志位 SF,符号标志位 CF,进位标志位 OF,溢出标志位 adc 和 sbb cmp 检测比较结果的转移指令 串送指令(movsb、movsw) pu原创 2022-05-26 23:13:31 · 354 阅读 · 0 评论 -
【汇编语言】笔记 1~8章
目录寄存器 数据在寄存器中的存储 8086CPU如何给出物理地址 CS和IP jmp 寄存器(内存访问) 数据在内存单元的存储 DS和[address] CPU的栈机制 内存段 程序的生命周期 编写 编译 连接 加载 寄存器数据在寄存器中的存储8086的CPU是16位结构,其CPU内部总线的宽度是16,这意味着CPU内部的寄存器、运算器、控制器一次能传输、存储的最大数据为16位。对于通用寄存器来说,例如ax,可以分为高位ah和低原创 2022-04-29 18:44:29 · 1139 阅读 · 0 评论 -
CPU的栈机制
内存中的一段连续空间,可以看作栈,以先进后出的方式存储信息。如果说栈是什么,最好的例子应该是手枪弹夹。这是一段连续的内存空间,由弹夹入口至弹夹底部,内存单元地址递增,假设入口处地址为10000H,每个子弹占据一块标准内存空间(1个字节),第二颗子弹起始位置就应该是10001H。假设一共有16颗子弹,那么整体占用的地址应该是从10000H~10010H。栈空间是人为想象出来的,那么CPU怎么确定栈的入口和终点?首先要明确栈顶的概念,栈顶(SP)是个指针,永远指向栈中“最高“位置处,栈顶指向的内存空间地原创 2021-08-30 19:32:48 · 1546 阅读 · 0 评论 -
寄存器访问内存
内存中字的存储字用来描述cpu一次性能处理的数据量,比如8086PC机的CPU是16位机型,一次可处理16位bit,那么对于该机器,一个字表示16个bit。一块内存单元存放一个字节,那么一个字需要两个内存单元。实际上,字存储在连续的两个内存单元中,这两个内存单元成为字单元。高位地址单元存放字的高位,低位地址单元存放字的低位。比如,1234H,0号单元存储34H,1号单元存储12H。寄存器的赋值前面我们学习过如何将汇编指令写入内存,让CS:IP指向命令所在内存地址,通过t命令来执行汇编指令原创 2021-08-30 19:32:06 · 378 阅读 · 0 评论 -
debug的使用
查看、改变寄存器内容R命令可以查看、改变寄存器的内容。通过-r,可以看到各个寄存器中的值。并且还展示了CS:IP存储的机器码和其对应的编译指令。(DOSbox是虚拟dos环境,存储的值基本都是0)-r后指定寄存器名称,就可以自定义寄存器存储的值。查看内存单元存储的值默认方式查看D命令可以查看内存空间的值。-d 默认每次展示128个内存单元的信息 右侧显示内存单元ascii码值,比如34H=52,表示的是4,对于不能表示的字符,统一用 . 代替 起始位置是当前CS:I.原创 2021-08-30 19:30:51 · 1616 阅读 · 0 评论 -
寄存器执行指令过程
文章中涉及的机器默认为8086CPU和8086PC机寄存器8086有14个寄存器,其中AX BX CX DX通常存放一般数据,可以简单认为他们就是变量。例如:mov ax,4E20H就是将数据存入AX。add ax,1406H就是将数据加到原有的值上。8086的寄存器有16个比特位,他可以当作两个8比特位的寄存器使用。这两个寄存器分别叫AL,AH(我猜测是low和high的缩写)。mov al,78H就是将78存入低位字节中。当使用al、ah时,ax就被视为分离的寄存器,al、ah之间独立不相互原创 2021-08-30 19:30:07 · 1090 阅读 · 0 评论 -
CPU对存储器读写
cpu可以进行高速计算,计算需要数据,数据可以存储在内存中。那么cpu在计算时,就需要从内存中读取数据,cpu对内存读写数据是怎样进行的呢?简要来说,分为三步:获取存储单元地址 向存储单元芯片输送控制语句(读/写) 将数据返回cpu或写入内存单元cpu和存储单元交互,必然需要物理硬件支持,一个cpu有n多个线路和其他元件连接。上面三步,分别对应三种数据总线:地址总线 控制总线 数据总线让一台微机进行工作,比如cpu要获取第三号存储单元中的数据,需要向微机输入电平信息,用机器指令表示为原创 2021-08-30 19:29:26 · 2383 阅读 · 0 评论