概述
我用的Masm,怎么下载请自行百度,主要我用的是老师给的,网上具体怎么弄不清楚????
输入框初始的样子:
DATAS SEGMENT
;此处输入数据段代码
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
MOV AH,4CH
INT 21H
CODES ENDS
END START
先看赋值方式,规定不允许给CS赋值,其他随意
;都是字符形式
;哦对了,一个英文的“;”是备注标志
MOV AL,1
MOV BL,'A'
MOV CL,[5]
MOV DL,CL
输出语句:规定输出只能输出DL的值
MOV AH,2
INT 21H
举个栗子,
MOV AL,'A'
MOV DL,AL
MOV AH,2
INT 21H
与
MOV DL,'A'
MOV AH,2
INT 21H
是一样的,都是输出字符A
输入语句:同样规定不允许给CS赋值,输入的值默认存到AL
;只可输入一个字符
MOV AH,1
INT 21H
输入code + 输出code = 这个栗子(连续输入两个值并输出)
DATAS SEGMENT
;此处输入数据段代码
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
MOV AH,1;输入到AL
INT 21H
MOV BL,AL;将AL的值赋给BL
MOV AH,1;输入到AL
INT 21H
MOV CL,AL;将AL的值赋给CL
MOV DL,BL;输出第一次输入的值
MOV AH,2
INT 21H
MOV DL,CL;输出第二次输入的值
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
END START
我猜可能有人想为什么第二次不可以直接输出AL,确实不可以,因为 MOV AH,2会改变AL 的值
往后这一类的语句都要注意,会改变AL,AH,AX的值
PS:由于本人不知道CSDN里编译汇编的代码块怎么写,网上也没找到答案,就随便找了一个看着舒服点的,有知道的同学请评论,有偿,您会获得博主好感度+1,或者+100也行????
最后
以上就是无情荷花为你收集整理的汇编笔记——赋值、输出与输入单个字符或数字的全部内容,希望文章能够帮你解决汇编笔记——赋值、输出与输入单个字符或数字所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复