我是靠谱客的博主 无情荷花,最近开发中收集的这篇文章主要介绍汇编笔记——赋值、输出与输入单个字符或数字,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我用的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也行????

最后

以上就是无情荷花为你收集整理的汇编笔记——赋值、输出与输入单个字符或数字的全部内容,希望文章能够帮你解决汇编笔记——赋值、输出与输入单个字符或数字所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部