随笔分类 -  汇编语言

摘要:8086 flag标志寄存器 0 CF 2 PF 4 AF 6 ZF 7 SF 8 TF 9 IF 10 DF 11 OF 11.1 ZF标志 零标志位,记录相关指令执行后结果是否为0。为0 ZF=1 不为0 ZF=0 11.2 PF标志 PF奇偶标志位,相关指令执行后,其结果的所有bit位中1的个 阅读全文
posted @ 2025-02-28 15:23 zhongta 阅读(59) 评论(0) 推荐(0)
摘要:名称:show_str 功能,在指定的位置,用指定的颜色,显示一个用0结束的字符串。 参数:(dh)行号。(dl)列号,(cl)颜色 ds:si指向字符串首地址 返回无 应用举例:8行3列,用绿色显示data中的字符串 代码如下: assume cs:code data segment db 'We 阅读全文
posted @ 2024-11-19 14:22 zhongta 阅读(76) 评论(0) 推荐(0)
摘要:call和ret都是转移指令,修改Ip或同时修改cs ip。 1.ret和retf ret指令用栈中的数据,修改ip的内容。从而实现近转移 retf指令用栈中的数据,修改cs和ip的内容,从而实现远转移。 CPU执行ret指令时,进行下面两步操作 (IP)=((SS)*16+(SP)) (SP)=( 阅读全文
posted @ 2024-11-13 15:33 zhongta 阅读(201) 评论(0) 推荐(0)
摘要:1.操作符offset 取得标号的偏移地址 例 将s处的一条指令复制到s0处 assume cs:codesg codesg segment s: mov ax,bx mov si,offset s mov di,offset s0 mov ax,cs:[si] mov cs:[di],ax s0: 阅读全文
posted @ 2024-11-04 15:40 zhongta 阅读(105) 评论(0) 推荐(0)
摘要:1.进行字操作,因为寄存器都是字长寄存器word mov ax,1 mov bx,ds:[0] mov ds,ax mov ds:[0],ax inc ax add ax,1000 2.进行字节操作寄存器都是字节寄存器byte mov al,1 mov al,bl mov al,ds:[0] mov 阅读全文
posted @ 2024-10-29 15:48 zhongta 阅读(37) 评论(0) 推荐(0)
摘要:1.and指令,逻辑与指令 mov al,01100011B and al,00111011B 结果 00100011B 可以通过与指令将指定位置0 2.or或指令 mov al,01100011B or al, 00111011B 结果 01111011B 可以通过或指令将指定位置1 3.字符形式 阅读全文
posted @ 2024-10-23 15:10 zhongta 阅读(39) 评论(0) 推荐(0)
摘要:1.[bx]表示一个内存单元,偏移地址在[bx]中。 mov ax,[bx] 将一个内存单元的内容送入ax,这个内存单元的长度为2字节,存放一个字,偏移地址在bx中,段地址在ds中 mov al,[bx] 将一个内存单元的内容送入al,这个内存单元的长度为1字节,偏移地址在bx中,段地址在ds中 I 阅读全文
posted @ 2024-10-18 16:33 zhongta 阅读(67) 评论(0) 推荐(0)
摘要:1.xxx segment xxx ends 伪指令,定义一个段。 2.end 汇编程序的结束标记。注意和ends区分。 3.assume 假设,用来关联 4.程序返回 mov,ax,4c00h int 21h 阅读全文
posted @ 2024-10-14 15:31 zhongta 阅读(16) 评论(0) 推荐(0)
摘要:将内存可以依我们自己定义为段 1.存放数据,数据段。用DS访问 2.存放代码,代码段。用CS IP访问 3.存放栈 栈段,用SS SP访问。 阅读全文
posted @ 2024-10-13 15:25 zhongta 阅读(20) 评论(0) 推荐(0)
摘要:1.SS.Sp存放栈顶的段地址和偏移地址。 2.push (1)Sp=Sp-2(2)向SS:SP指向的字单元送入数据 3.pop(1)从SS:SP中读取数据(2)Sp=Sp+2; 4.任何时刻,SS:SP指向栈顶元素 阅读全文
posted @ 2024-10-13 15:16 zhongta 阅读(16) 评论(0) 推荐(0)
摘要:r:查看修改寄存器中的内容 d:查看内存中的内容 e:修改内存中的内容 u:将内存中的内容解释为机器指令和对应的汇编指令 t:执行CS:IP指向的内存单元的指令 a:以汇编指令的方式向内存中写入指令 g: -g 0012 Debug到 cs+0012位置 p:自动执行循环中的命令直到(cx)=0 d 阅读全文
posted @ 2024-10-09 14:59 zhongta 阅读(32) 评论(0) 推荐(0)