汇编语言

作者&投稿:郦义 (若有异议请与网页底部的电邮联系)
汇编语言里的 "$" 是什么意思?怎么用?~

代表当前指令的地址,如:
data segment
str1 db a,b,c,d
leng equ $-str
就是当前地址减去str1的初始地址,即可得到str1的长度。
在字符串中是结束标志,就是字符串遇到$才会结束,类似于c语言中字符串中结尾的'0'。

扩展资料:
语言特点
汇编语言是计算机提供给用户的最快最有效的语言,也是能够利用计算机的所有硬件特性并能够直接控制硬件的唯-语言。但是由于编写和调试汇编语言程序要比高级语言复杂,因此目前其应用不如高级语言广泛。
汇编语言比机器语言的可读性要好,但跟高级语言比较而言,可读性还是较差。不过采用它编写的程序具有存储空间占用少、执行速度快的特点,这些是高级语言所无法取代的。
参考资料来源:百度百科-$ (汇编语言中字符串结束的标志)

“$”是汇编语言中的一个预定义符号,等价于当前正汇编到的段的当前偏移值。例如eg:指令“jmp $+3”中的“$”表示当前这条指令在代码段中的偏移量。
汇编语言, 即第二代计算机语言,用一些容易理解和记忆的字母,单词来代替一个特定的指令,比如:用“ADD”代表数字逻辑上的加减,“ MOV”代表数据传递等等,通过这种方法,人们很容易去阅读已经完成的程序或者理解程序正在执行的功能。

扩展资料:
语言特点
汇编语言是计算机提供给用户的最快最有效的语言,也是能够利用计算机的所有硬件特性并能够直接控制硬件的唯-语言。但是由于编写和调试汇编语言程序要比高级语言复杂,因此目前其应用不如高级语言广泛。
汇编语言比机器语言的可读性要好,但跟高级语言比较而言,可读性还是较差。不过采用它编写的程序具有存储空间占用少、执行速度快的特点,这些是高级语言所无法取代的。在实际应用中,是否使用汇编语言,取决于具体应用要求、软件开发时间和质量等方面作权衡。

汇编器
典型的现代汇编器(assembler)建造目标代码,由解译组语指令集的易记码(mnemonics)到操作码(OpCode),并解析符号名称(symbolic names)成为存储器地址以及其它的实体。
使用符号参考是汇编器的一个重要特征,它可以节省修改程序后人工转址的乏味耗时计算。基本就是把机器码变成一些字母而已,编译的时候再把输入的指令字母替换成为晦涩难懂机器码
参考资料来源:百度百科- $ (汇编语言中字符串结束的标志)



1、编写汇编语言源程序结构框架。定义程序代码段及数据段,并初始化数据段寄存器。
;程序模板
DSEG SEGMENT
;数据段:在此处添加程序所需的数据
DSEG ENDS
CSEG SEGMENT
assume cs:CSEG, ds:DSEG
MAIN PROC FAR ;主程序入口
mov ax, dseg
mov ds, ax
;此处添加主程序代码

;按任意键退出
mov ah,1
int 21h
mov ax, 4c00h ;程序结束,返回到操作系统系统
int 21h
MAIN ENDP
CSEG ENDS
END MAIN
2、在代码段中输入以下程序段,经汇编、链接后,生成可执行文件。在TD下用F8单步运行,执行INT 21H指令时,在键盘上按“5”键。
MOV AH,1
INT 21H
运行结束后,AL=35H,是字符5的ASCII码。
3、在DS:1000H开始的内存区域设置如下键盘缓冲区:
DS:1000H 5,0,0,0,0,0,0
执行下列:
LEA DX, [1000H]
MOV AH, 0AH
INT 21H
执行INT 21H指令时,在键盘键入“5”、 “4”、 “3”、 “2”、 “1”、 <回车>这6个键,程序段运行完后,检查DS:1000H开始的内存区域:
(1) DS:1001H单元的内容是5,它表示的含义是实际接收字符个数(不包括回车)
(2) 从DS:1002H开始的内存区域中的内容依次是35H,34H,33H,32H,21H,其中有字符“1”的ASCII码31H。
4、在上题的基础上,执行以下程序段:
MOV DL ,’A’
MOV AH,2
INT 21H
(1) 屏幕上的输出为A。
(2) 分别用“#”、 “X”、 “Y”、 “$”、 “?”代替程序段中的“A” 字符,屏幕上的输出分别为# X Y $ ?。
(3) 分别用0DH、0AH代替程序段中的“A”字符,屏幕上的输出为回车换行。
(4) 用07H代替程序段中的“A”字符,屏幕上无输出,能听到响铃声。
5.要在屏幕上显示一个字符串“Hello,world”,该程序如下:
data segment
msg db 'Hello,world$'
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax
lea dx,msg;9号功能调用显示字符串
mov ah,9
int 21h
mov ah,1;按任意键结束程序
int 21h
mov ax,4c00h;结束程序
int 21h
code ends
end start

数据交换指令
XCHG
8086汇编语言指令格式:
XCHG
OPRD1,OPRD2
其中的OPRD1为目的操作数,OPRD2为源操作数
8086汇编语言指令功能:
将两个操作数相互交换位置,该指令把源操作数OPRD2与目的操数OPRD1交换.
8086汇编语言指令说明:
1.
OPRD1及OPRD2可为通用寄存器或存储器,但是两个存储器之间是不能用XCHG指令实现的
2.
段寄存器内容不能用XCHG指令来交换
示例:
XCHG
AX,BX
XCHG
SI,AX
XCHG
CL,CH
XCHG
DX,BUFFER
XCHG
CH,DATA2[SI]
SCHG
WORDA,CX
3.
若要实现两个存储器操作数DATA1及DATA2的交换,可用以下指令实现:
示例:
PUSH
DATA1
PUSH
DATA2
POP
DATA1
POP
DATA2
注意:
此处通过中间寄存器,也很容易实现两个存储器操作数的交换
4.
本指令不影响状态标志位


计算机编程语言有哪些
计算机编程语言有很多种,主要包括Java、Python、C++、C、JavaScript等。计算机编程语言是用于与计算机交互的特定系统,用于控制计算机操作或产生特定结果的一系列命令。以下是几种常见的计算机编程语言及其简要介绍:1. Java:Java是一种广泛使用的编程语言,特别适用于大型项目和企业级应用开发。它具有跨平台...

编程学哪种语言好
学编程一般有C语言、Java、C ++、Python、PHP、JavaScript六大语言。01、C语言 作为最古老的编程语言之一,C依然高居榜首,这归功于其可移植性以及微软、Oracle和苹果等科技巨头采用它。它与几乎所有系统兼容,很适合操作系统和嵌入式系统。02、Java Java是编程语言的红人。它是一门面向对象的编程语言,...

计算机编程语言有哪几种
计算机编程语言有C语言、java、c++(、php、c#语言。编程语言一、C语言 C语言绘图能力强,具有可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。编程语言二、java Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems...

什么叫做编程语言?
编程:设计具备逻辑流动作用的一种“可控体系”【注:编程不一定是针对计算机程序而言的,针对具备逻辑计算力的体系,都可以算编程。】一、编程语言 机器语言:是机器能直接识别的程序语言或指令代码。计算机是基于二进制的0和1来处理运算,这种0和1的组合指令又叫做机器语言。编译器:就像中国人和外国人...

计算机编程语言有哪几种?
机器语言:一串01代码,这种代码成为机器代码。可以不用进行编译等,可以直接执行,执行速度快,缺点是可读性非常差,不利于编写程序。汇编语言:机器语言难于记忆,汇编语言是机器语言的符号化表示,不同的机器对应不同的汇编指令。属于低级语言,执行效率低机器语言,执行效率比高级语言快。更便于人类理解和...

编程语言有哪些种类
有高级语言VB、Java等,中级语言C、C++等,低级语言:汇编语言,最低级的应该是机器语言。或者分成高级语言、汇编语言、机器语言。脚本类的语言是高级语言的变形,严格意义上说不能成为严谨的计算机语言。分类种类很多,比如还分成了描述性语言、结构化程序设计语言、面向对象语言等,还有一些是针对某些系统的...

编程语言包括哪些
编程语言包括很多种,主要分为以下几类:一、基础编程语言 1. C语言:C语言是计算机编程的基础语言之一,具有高效、灵活的特点。它是许多操作系统和应用程序的核心语言。2. Java:Java是一种跨平台的编程语言,广泛应用于大型项目和企业级应用开发。3. Python:Python是一种简洁、易学的编程语言,广泛...

编排语言是什么意思
依次排列。编排语言是按照一定的目的依次排列,也可以是调配、安排的意思,从全局的视点描述服务组合各个参与方的行为。语言是人类进行沟通交流的表达方式。据德国出版的《语言学及语言交际工具问题手册》,世界上查明的有5651种语言。是人类最重要的交际工具。它跟思想有密切关系,是人类区别于其他动物的本质...

中文编程语言有哪些?
易语言,一种以中文作为编程代码的全中文编程语言,由吴涛创立。它的早期版本名为E语言,并于2000年9月11日首次发布。易语言的设计初衷是实现用中文编程,以适应中国人的思维习惯,减少对西方逻辑的依赖。自2000年以来,易语言已发展成为具有相当规模和功能的编程语言,用户群体也相当庞大。易语言是一种全...

想知道编程语言有哪些?
编程语言主要包括汇编语言、机器语言以及高级语言。汇编语言:该语言主要是以缩写英文作为标符进行编写的,运用汇编语言进行编写的一般都是较为简练的小程序,其在执行方面较为便利,但汇编语言在程序方面较为冗长,所以具有较高的出错率。机器语言:这种语言主要是利用二进制编码进行指令的发送,能够被计算机...

德钦县19516843895: 汇编语言 - 搜狗百科
善郭石龙: 汇编语言(AssemblyLanguage)是面向机器的程序设计语言.在汇编语合中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码.这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言.于是...

德钦县19516843895: 汇编语言是一种什么语言
善郭石龙: 结合本人从清华学习经验,说说本人的深切体会吧,初识它时,认为汇编语言是一种助记符,一种低级语言,直接面对指令,将二进制指令替换成人类便于记忆的字符串,...

德钦县19516843895: “汇编语言”是什么语言? -
善郭石龙: 汇编语言是一种高于机器语言的语言,计算机中都是二进制处理的,控制命令都是二进制,对人来说很难记忆,所以人们为了便于更好的记住这些语言就开发了汇编语言,汇编语言可以直接控制计算机的硬件,不用再去记住很长的二进制命令.用比如mov,add等命令就可以实现加法和存取功能.汇编语言是一门很重要的计算机学科的语言.

德钦县19516843895: 汇编语言是什么东西 -
善郭石龙: 汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址符号(Symbol)或标号(Label)代替指...

德钦县19516843895: 什麽是汇编语言
善郭石龙: 为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“A D D”代表加法,“M O V”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言.然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序. 汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具.

德钦县19516843895: 计算机汇编语言是什么意思?
善郭石龙: 汇编语言:一种面向机器的用符号表示的程序设计语言,也叫符号语言!而机器语言是计算机硬件能直接识别的程序设计语言,汇编语言比计算机语言直观、便于理解

德钦县19516843895: 汇编语言介绍了些什么呢 -
善郭石龙: 汇编语言介绍了些什么呢?汇编语言(Assembly Language)是面向机器的程序设计语言. 在汇编语合中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址妈.这样用符号代替机器语盲的二进制码,就把机...

德钦县19516843895: 汇编语言是什么语言?
善郭石龙: 是一种在硬件基础上编写的语言,介于机器语言和高级语言之间

德钦县19516843895: 汇编语言的解释 -
善郭石龙: 汇编语言(Assembly Language)是面向机器的程序设计语言.汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言.汇编语言”作为一门语言,对应于高级语言的编译器,需要一个“汇编器”来把汇...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网