汇编之基础代码_2

本文介绍了8086汇编语言的基础知识,通过彩色hello_dome、简单分支、复合分支、找最大数及3个数累加和等实例,深入浅出地讲解了汇编语言的基本操作和流程控制。适用于初学者入门学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

不清楚的地方欢迎提问!小弟水平不高,请多指教。

我的环境:win8+emu8086

 

彩色hello_dome

 

;.486
;定义数据段
SHOW1	MACRO	X,Y,LL,MSG,COLOR
	MOV	AX,1301H
	MOV	BH,0
	MOV	BL,COLOR
	MOV	CX,LL
	MOV	DH,X
	MOV	DL,Y
	MOV	BP,OFFSET MSG
	INT 10H
	ENDM
DATA	SEGMENT USE16
	MSG1	DB	'Hello'
	L1	= $-MSG1
	MSG2	DB	'I AM A STUDENT'
	L2	=$-MSG2
	MSG3	DB	'Goodbye!'
	L3	= $-MSG3
	
DATA  ENDS
CODE	SEGMENT	USE16
	ASSUME	CS:CODE,DS:DATA,ES:DATA
BEG:
	MOV	AX,DATA
	MOV	DS,AX
	MOV	ES,AX
	MOV	AX,0003H
	INT 10H
	;MOV	AH,9
	;MOV	DX,OFFSET MSG1
	;INT 21H
	SHOW1	0,10,L1,MSG1,02H
	SHOW1	12,38,L2,MSG2,04H
	SHOW1	24,60,L3,MSG3,0EH
	MOV	AH,4CH
	INT 21H

	
CODE	ENDS
	END BEG

简单分支

 

 

;简单分支。
;通常是在执行了算数比较指令CMP,或者逻辑比较指令TEST之后,
;根据Z,S,O,P,C各种标志的状态进行有条件转移
;
;二进制数位显示程序
;将BX寄存器的内容以二进制格式显示在屏幕上

;.486
CODE    SEGMENT USE16
        ASSUME  CS:CODE
BEG:    MOV     BX, 5678H
        MOV     CX, 16
LAST:   MOV     DL, '0'
        RCL     BX, 1       ;BX循环左移一位,带进位
        JNC     NEXT        ;进位标志位0转,显示0
        MOV     DL, '1'     ;否则显示1
NEXT:   MOV     AH, 2
        INT     21H
        LOOP    LAST
        MOV     AH, 4CH
        INT     21H
CODE    ENDS    
        END     BEG

复合分支

 

 

;复合分支
;例4.5 复合判断
;设NUMBER单元的数X以及数值N1、N2均为单字节无符号数,
;试判断X的大小,并根据判断结果分别显示:N1<=X<=N2,
;或X<N1,或X>N2.

;.486
DATA    SEGMENT USE16
MESG1   DB      'N1 <= X <= N2 $'
MESG2   DB      'X
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源计划猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值