当前位置:网站首页>汇编语言(6)使用JCC指令构造分支与循环
汇编语言(6)使用JCC指令构造分支与循环
2022-06-25 17:06:00 【Day-3】
1 数据段的使用
汇编语言打印字符串。
assume cs:code,ds:data
data segment
buffer db 0DH,0AH,'day3$'
data ends
code segment
main proc
mov ax,data
mov ds,ax
mov dx,offset buffer
mov ah,09H
int 21H
mov ah,07H
int 21H
mov ax,4C00H
int 21H
main endp
start:call main
code ends
end start
2 flag寄存器
CMP OPRD1,OPRD1
SUB影响标志位
AX = 8
BX = 8
相等 AX - BX = 0 ZF = 1
AX = 8
BX = 1
不相等 AX - BX != 0 ZF = 0
AX < BX:发生借位
CF = 1
AX > BX:不发生借位
AX - BX = ?CF = 0 ZF = 0
AX <= BX:
AX - BX = ? CF = 1 || ZF = 1
AX >= BX:
AX - BX = ? CF = 0 || ZF = 1
一类 JCC 指令 跳转
JMP address
JE 条件转移指令 等于则跳转 ZF = 1
JNE 不等于则跳转 ZF = 0
JB 低于则跳转 CF = 1
JA 高于则跳转 CF = 0 && ZF = 0
JNA 小于等于则跳转 CF = 1 或者 ZF = 1
JNB 大于等于则跳转 CF = 0
3 跳转
assume cs:code,ds:data
data segment
buffer db 0DH,0AH,'day3$'
buffer1 db 0DH,0AH,'day2$'
data ends
code segment
main proc
mov ax,data
mov ds,ax
mov dx,offset buffer
mov ah,09H
int 21H
jmp qq1
mov dx,offset buffer1
mov ah,09H
int 21H
qq1:
mov ah,07H
int 21H
mov ax,4C00H
int 21H
main endp
start:call main
code ends
end start
创造跳转条件
assume cs:code,ds:data
data segment
buffer db 0DH,0AH,'day3$'
buffer1 db 0DH,0AH,'day2$'
data ends
code segment
main proc
mov ax,data
mov ds,ax
mov dx,offset buffer
mov ah,09H
int 21H
mov ax,1
mov bx,2
cmp ax,bx
ja qq1
mov dx,offset buffer1
mov ah,09H
int 21H
qq1:
mov ah,07H
int 21H
mov ax,4C00H
int 21H
main endp
start:call main
code ends
end start
需要满足多个条件则依次判断是否满足条件。
循环
for(int i = 0; i <= 100; i ++)
mov cx,0
qq2:
cmp cx,100
ja qq
mov dx,offset buffer
mov ah,09H
int 21H
inc cx
jmp qq2
qq:
mov cx,0
qq2:
mov dx,offset buffer
mov ah,09H
int 21H
inc cx
cmp cx,100
jb qq2
边栏推荐
- 单例模式应用
- 数学建模——非线性规划
- 【Matlab】数据插值
- Using pywebio testing, novice testers can also make their own testing tools
- PLSQL 存储函数SQL编程
- Solution to the problem of incorrect clock in FreeRTOS kernel
- Cache architecture scheme of ten million level shopping cart system
- 【Matlab】曲线拟合
- XXIX - orbslam2 real-time 3D reconstruction using realsensed435
- ddia数据密集型应用系统设计 整理
猜你喜欢
随机推荐
Website arrangement of super all metal PBR multi-channel mapping materials
Why does MySQL limit affect performance?
组件通讯的方式有哪些
WPF开发随笔收录-心电图曲线绘制
Batch --07--- breakpoint lifting
Home office earned me C | community essay
数据搬迁最佳实践之使用CDM搬迁线下MySQL到DWS
Old mobile phones turn waste into treasure and serve as servers
Redis 的PSYNC命令
上线移动ERP系统有哪些步骤?环环紧扣很重要
redis 分布式锁整理
剑指 Offer II 014. 字符串中的变位词 滑动窗口
剑指 Offer II 012. 左右两边子数组的和相等
JVM memory structure
Kotlin
STM32 hardware error hardfault_ Handler processing method
Mathematical modeling - linear programming
Babbitt yuan universe daily recommendation: three players holding "tens of millions" of collections have revealed the "three routines" of the digital collection market
ES6知识点
【微服务|Sentinel】流控规则概述|针对来源|流控模式详解<直接 关联 链路>









