基于8086CPU的汇编学习笔记

本文详细介绍了8086CPU的汇编语言学习,包括寄存器的用途,如CS:IP、DS、SS:SP、CX、BX、SI、DI、ZF等,以及常用汇编指令如MOV、ADD、SUB、JMP、TEST、CMP等的使用,并讲解了条件跳转、栈操作、循环、乘法、串处理和中断处理等概念。
摘要由CSDN通过智能技术生成

寄存器:
    CS:IP寄存器构成了代码地址 CS为代码段寄存器 IP为代码偏移寄存器
    DS 为数据段寄存器
    SS:SP构成栈地址 SS为栈段寄存器 SP为栈偏移寄存器,设置时应接连设置,因为ss传值和sp传值中间的语句不会引起中断
    CX寄存器,通常用在loop循环中,记录循环次数
    BX一般用作偏移地址寄存器
    SI,DI寄存器功能类似于BX,不同点是不能拆分成两个八位寄存器,都用于定位内存地址
    ZF 零标志位 PF 奇偶标志位 SF符号标志位 CF 无符号进位标志位 OF 有符号溢出标志位  DF 方向标志位,在串处理指令中,控制每次操作后,si/di递减或递增
    TF 中断标志位,TF=1则引起单步中断,这实现了编译器的单步调试功能
    IF 屏蔽中断标志位,IF=1则响应中断,IF=0则屏蔽中断
汇编指令 
    MOV 赋值指令 MOV 不能直接给段寄存器赋值,需要通用寄存器中转 通用寄存器 ax,bx,cx,dx等 mov的指令类型是通用数据传送,传送的是数据
    lea 赋值语句 lea的指令类型是目的地址传送,传送的是地址
    add 累加语句 add ax,bx   意思 ax = ax+bx
    sub 减法语句 sub ax,bx 意思 ax = ax-bx
    jmp 跳转语句 后面跟代码地址 CS:IP 只跟IP代表当前段
    test 判等语句,常搭配后面使用 
    CMP 判等语句 仅影响标志位
        cmp ax,bx,执行后
            zf=1,说明(ax)=(bx)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值