• 技术文章 >常见问题

    用二进制序列编写的程序称为什么程序

    青灯夜游青灯夜游2022-07-25 13:55:18原创149

    用二进制序列编写的程序称为“机器语言”程序。机器语言是直接用二进制代码指令表达的计算机语言,指令是用0和1组成的一串代码,它们有一定的位数,并分成若干段,各段的编码表示不同的含义。用机器语言编写程序,编程人员要首先熟记所用计算机的全部指令代码和代码的涵义。

    本教程操作环境:windows7系统、Dell G3电脑。

    用二进制序列编写的程序称为“机器语言”程序。

    机器语言是指计算机硬件能够直接识别的指令的集合,最早出现的计算机语言。机器语言从属于硬件设备。不同的计算机设备有不同的机器语言,所以机器语言是一种面向机器的语言。

    机器语言是直接用二进制代码指令表达的计算机语言,指令是用0和1组成的一串代码,它们有一定的位数,并分成若干段,各段的编码表示不同的含义,例如某台计算机字长为64位(bit),即有64个二进制数组成一条指令或其它信息。64个0和1可组成各种排列组合,通过线路变成电信号,让计算机执行各种不同的操作。

    一条指令就是机器语言的一个语句,它是一组有意义的二进制代码,指令的基本格式如,操作码字段和地址码字段,其中操作码指明了指令的操作性质及功能,地址码则给出了操作数或操作数的地址。

    用机器语言编写程序,编程人员要首先熟记所用计算机的全部指令代码和代码的涵义。手编程序时,程序员得自己处理每条指令和每一数据的存储分配和输入输出,还得记住编程过程中每步所使用的工作单元处在何种状态。这是一件十分繁琐的工作。编写程序花费的时间往往是实际运行时间的几十倍或几百倍。而且,编出的程序全是些0和1的指令代码,直观性差,还容易出错。除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言了。

    机器语言指令的格式

    计算机是通过执行指令来处理各种数据的。为了指出数据的来源、操作结果的去向及所执行的操作,一条指令必须包含下列信息:

    (1)操作码。它具体说明了操作的性质及功能。一台计算机可能有几十条至几百条指令,每一条指令都有一个相应的操作码,计算机通过识别该操作码来完成不同的操作。

    (2)操作数的地址。CPU通过该地址就可以取得所需的操作数。

    (3)操作结果的存储地址。把对操作数的处理所产生的结果保存在该地址中,以便再次使用。

    (4)下条指令的地址。执行程序时,大多数指令按顺序依次从主存中取出执行,只有在遇到转移指令时,程序的执行顺序才会改变。为了压缩指令的长度,可以用一个程序计数器(ProgramCounter,PC)存放指令地址。每执行一条指令,PC的指令地址就自动+1(设该指令只占一个主存单元),指出将要执行的下一条指令的地址。当遇到执行转移指令时,则用转移地址修改PC的内容。由于使用了PC,指令中就不必明显地给出下一条将要执行指令的地址。

    一条指令实际上包括两种信息即操作码和地址码。操作码(OperationCode,OP)用来表示该指令所要完成的操作(如加、减、乘、除、数据传送等),其长度取决于指令系统中的指令条数。地址码用来描述该指令的操作对象,它或者直接给出操作数,或者指出操作数的存储器地址或寄存器地址(即寄存器名)。

    指令包括操作码域和地址域两部分。根据地址域所涉及的地址数量,常见的指令格式有以下几种:

    ①三地址指令:一般地址域中A1、A2分别确定第一、第二操作数地址,A3确定结果地址。下一条指令的地址通常由程序计数器按顺序给出。

    ②二地址指令:地址域中A1确定第一操作数地址,A2同时确定第二操作数地址和结果地址。

    ③单地址指令:地址域中A 确定第一操作数地址。固定使用某个寄存器存放第二操作数和操作结果。因而在指令中隐含了它们的地址。

    ④零地址指令:在堆栈型计算机中,操作数一般存放在下推堆栈顶的两个单元中,结果又放入栈顶,地址均被隐含,因而大多数指令只有操作码而没有地址域。

    ⑤可变地址数指令:地址域所涉及的地址的数量随操作定义而改变。如有的计算机的指令中的地址数可少至 0个,多至6个。

    更多相关知识,请访问常见问题栏目!

    以上就是用二进制序列编写的程序称为什么程序的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:在计算机的硬件技术中,构成存储器的最小单位是什么 下一篇:在以太网中是根据什么地址来区分不同的设备的
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 机器语言、汇编语言、高级语言各有什么特点• 什么是一种符号化的机器语言• 机器语言、汇编语言和高级语言的区别是什么• php怎么将二进制转为浮点型数• jquery怎么实现十进制转二进制• 怎么删除mysql二进制日志
    1/1

    PHP中文网