顺序程序和分支程序

1、顺序程序设计

DATA  SEGMENT
	X DB 8FH
	Y DB 97H
	Z DB ?
DATA  ENDS
STAC SEGMENT STACK 'STACK'
	DW 20H DUP(?)
	TOP LABEL WORD
STAC ENDS
CODE SEGMENT
	MAIN PROC FAR
		ASSUME CS:CODE,DS:DATA,SS:STAC
	START:	MOV  AX,STAC
		MOV  SS,AX
		MOV  SP,OFFSET TOP
		PUSH  DS
		MOV  AX,DATA
		MOV  DS,AX
		MOV  AL,X
		ADD  AL,Y
		MOV  AH,0
		ADC  AH,AH
		SHR  AX,1
		MOV  Z,AL
		RET
	MAIN  ENDP
CODE ENDS
END START

2、分支程序设计
在这里插入图片描述

DSEG	SEGMENT
	VARX  DB  -25
	VARY  DB  ?
DSEG    ENDS
CSEG    SEGMENT
	ASSUME  CS:CSEG,DS:DSEG
	START:	MOV	AX,DSEG
		MOV	DS,AX
		MOV	AL,VARX
		CMP	AL,0
		JGE	NEXT
		MOV	VARY,-1
		JMP	HALT
	NEXT:	JE	ZARE
		MOV	VARY,1
		JMP	HALT
	ZARE:	MOV	VARY,0
	HALT:	MOV	AH,4CH
		INT	21H
CSEG	ENDS
END START
DSEG	SEGMENT
	VARX  DB  -25
	VARY  DB  ?
DSEG    ENDS
CSEG    SEGMENT
	ASSUME  CS:CSEG,DS:DSEG
	START:	MOV	AX,DSEG
		MOV	DS,AX

		MOV	AL,VARX
		CMP	AL,0
		JGE	NEXT
		MOV	AL,0FFH
		JMP	HALT	
	NEXT:	JE	ZAR0
		MOV	AL,1
		JMP	HALT
	ZAR0:	MOV	AL,0
	HALT:	MOV	VARY,AL

		MOV	AH,4CH
		INT	21H
CSEG	ENDS
END START
DSEG	SEGMENT
	VARX  DB  -25
	VARY  DB  ?
DSEG    ENDS
CSEG    SEGMENT
	ASSUME  CS:CSEG,DS:DSEG
	START:	MOV	AX,DSEG
		MOV	DS,AX

		MOV	AL,VARX
		CMP	AL,0
		JGE	NEXT
		MOV	AL,0FFH
		JMP	HALT	
	NEXT:	JE	ZAR0
		MOV	AL,1
		JMP	HALT
	ZAR0:	MOV	AL,0
	HALT:	MOV	VARY,AL
		
		MOV	DL,VARY
		MOV	CL,4
		ROR	DL,CL
		AND	DL,0FH
		CMP	DL,0FH
		JB	NUA
		ADD	DL,7
	NUA:	ADD	DL,30H
		MOV	AH,2
		INT	21H
		MOV	DL,VARY
		AND	DL,0FH
		CMP	DL,0AH
		JB	NUB
		ADD	DL,7
	NUB:	ADD	DL,30H
		MOV	AH,2
		INT	21H
		MOV	DL,'H'

		MOV	AH,4CH
		INT	21H
CSEG	ENDS
END START

输出FF,

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值