主要内容:

  一、编程语言分类和介绍

  二、Python解释器分类和介绍

一、编程语言分类和介绍

  1、编程语言分类

  编程语言的发展依次经历了机器语言汇编语言高级语言

  2、编程语言的介绍

    2.1 机器语言   

   定义:
  计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语言。
机器语言属于低级语言。   特点:
   <1>面向最底层,速度最快;
<2>最复杂,开发效率低,直观性差,程序全部由0和1构成。   示例:
    指令部分
    0000 代表“加载”(LOAD) 0001 代表“存储”(STORE)
    存储器部分
    000000000000 代表地址为0的存储器
    000000000001 代表地址为1的存储器

    2.2 汇编语言

定义:
汇编语言的实质和机器语言是相同的,都是直接对硬件操作,不同在于汇编语言采用了英文缩写的标识符,更容易识别和记忆。
编程者需要将每一步具体的操作用命令的形式写出来,汇编程序的每一句指令只能对应实际操作过程中的一个很细微的动作,例如移动、自增等。 特点:
1、比较底层,可执行文件较小,执行速度很快;
2、程序冗长复杂,容易出错,开发效率很低,需要非常专业的计算机知识。

  汇编语言示例:用汇编语言编写程序输出“Hello World!”

步骤一:了解汇编语言代码结构

data SEGMENT '数据段,编程者可以把数据都放到这个段里
....数据部分.... '数据格式是: 标识符 db/dw 数据。
data ENDS '数据段结束处。
edata SEGMENT '附加数据段,编程者可以把数据都放到这个段里
....附加数据部分....
edata ENDS '附加数据段结束处。
code SEGMENT '代码段,实际的程序都是放这个段里。
ASSUME CS:code,DS:data,ES:edata '告诉编译程序,data段是数据段DS,code段是代码段CS
start:
//代码区
code ENDS '代码段结束。
END start '整个程序结束,并且程序执行时由start那个位置开始执行。 步骤二:了解中断指令 中断指令:INT 21H
功能号:09H
功能描述:输出一个字符串到标准输出设备上。
输出内容:输出DS中指向的DX指向的内容,如果DX为空,则输出DS首地址指向的内容。
入口参数:AH=09H
DS:DX=待输出字符的地址
说明:待显示的字符串以'$'作为其结束标志
出口参数: 无 步骤三:定义"Hello World!"字符串 data SEGMENT
hello DB 'Hello World!$' ;注意要以$结束
data ENDS 步骤四:编写代码段 code SEGMENT
ASSUME CS:CODE,DS:DATA
start:
MOV AX,data ;将data首地址赋值给AX
MOV DS,AX ;将AX赋值给DS,使DS指向data
LEA DX,hello ;使DX指向hello首地址
MOV AH,09h ;给AH设置参数09H
INT 21h ;执行AH中设置的09H号功能。输出DS指向的DX指向的字符串hello
MOV AX,4C00h ;给AH设置参数4C00h
int 21h ;调用4C00h号功能,结束程序
code ENDS
END start 步骤五:运行

   2.3  高级语言

   高级语言是相对于机器语言而言的,是高度封装了的编程语言,与低级语言相对。它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序员编写更容易,有较高的可读性。

   高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为两类,分别是编译型和解释型。

   第一类:编译型

定义:
编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行(编译后生成的可执行文件,是CPU可以理解的2进制的机器码组成的),使用方便,效率较高。 特点:
1、源代码编译后程序可直接运行,速度快,程序执行效率高;
2、程序依赖编译器,跨平台性能差,且应用一旦需要修改,必须修改源代码,再重新编译生成新的目标文件(*.obj,也就是OBJ文件)才能执行,当只有目标文件而没有源代码时,修改很不方便。 编译型语言代表:C、C++、GO等。

   编译型语言的典型示例:

   第二类:解释型

定义:
解释型语言的执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由相应语言的解释器“翻译”成目标代码(机器代码),一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器,这种方式可以动态调整、修改应用程序。 特点:
1、跨平台,一份代码,到处使用,便于动态调整修改;
2、执行速度相对较慢,依赖解释器运行。 典型的解释型语言:Python、PHP、Java等。

  解释型语言的典型示例:

  编译型语言和解释型语言的终极对比,见下图:

  二、Python解释器分类和介绍

    1、Python解释器主要分为Cpython、IPython、PyPy、Jython和IronPython几派,各有特色和绝技。

    2、Python解释器的简单介绍

      2.1 CPython  

    CPython是用C语言开发的,所以我们在命令行下运行Python就是启动CPython解释器。
    CPython是使用量最广的且被官方推荐的Python解释器。

      2.2  IPython

    IPython是基于CPython之上的一个交互式解释器,也就是其本质与CPyhton相同,区别在于IPython在交互方式上有所增强,好比国产浏览器虽然外观不同,但内核大都调用了IE。

      2.3  PyPy

    PyPy形如其名,它是使用Python语言开发的解释器,采用JIT技术,对Python代码进行动态编译(注意,不是解释),可以显著提高Pyhton代码的·执行速度。
    目前尚未完全成熟,但以后大有可为。。。

      2.4  Jython

    Jython是运行在Java平台上的Python解释器,可以直接将Python代码编译成Java字节码执行。

      2.5  IronPython

    IronPython和Jython类似,只不过IronPython是运行在微软 .Net平台上的Python解释器,可以把Python代码编译成 .Net的字节码。

编程语言分类和Python解释器介绍的更多相关文章

  1. day02-操作系统、编程语言分类及python安装

    目录 操作系统 编程语言分类 安装python解释器 操作系统 操作系统有什么用 操作系统能接受外部指令转化成0和1,并把一些对硬件的复杂操作简化成一个个简单的接口,作为中间人连接硬件和软件 计算机三 ...

  2. 编程语言分类及python所属类型

    编程语言分类及python所属类型 编程语言主要从以下几个角度为进行分类:编译型和解释型.静态语言和动态语言.强类型定义语言和弱类型定义语言. 编译和解释的区别是什么? 编译器是把源程序的每一条语句都 ...

  3. python解释器介绍以及Pycharm的破解

    python语言是弱类型解释型语言,弱类型指的是没有强制规定它的类型. 由于是解释型语言,则必有解释器与其匹配,根据不同的工作环境以及需求,python的解释器有很多种, 官方推荐的是CPython, ...

  4. Python 解释器介绍

    举个栗子: -c cmd用法 python -c ' import os ; print ("is ok ") ' 或者(注意引号形式) python -c "impor ...

  5. 【2022-06-16】Python解释器的下载安装与使用

    一.Python解释器介绍 什么是Python解释器? Python是一门解释型语言,解释器是Python运行必不可少的一种工具.所以,我们搭建Python环境,本质上就是对Python进行配置和定制 ...

  6. 基础知识:编程语言介绍、Python介绍、Python解释器安装、运行Python解释器的两种方式、变量、数据类型基本使用

    2018年3月19日 今日学习内容: 1.编程语言的介绍 2.Python介绍 3.安装Python解释器(多版本共存) 4.运行Python解释器程序两种方式.(交互式与命令行式)(♥♥♥♥♥) 5 ...

  7. day02编程语言,Python语言介绍,Python解释器安装,环境变量,Python代码执行,pip,应用程序使用文件的三步骤,变量,变量的三大组成,比较,pycharm

    复习 重点: 1.进制转换:二进制 与十六进制 2.内存分布:栈区 与堆区 # 二进制1111转换十六进制 => 8 4 2 1 => f 10101100111011 => 2a7 ...

  8. 编程语言分类,安装python解释器,变量

    1.编程语言分类 机器语言:直接使用二进制指令去编写程序,直接操作硬件 优点:执行效率高 缺点:开发效率低 汇编语言:用英文标签取代二进制指令去编写程序,直接进操作硬件 优点:开发效率高于机器语言 缺 ...

  9. 编程语言分类 + python解释器的安装 + jupyter的使用(day 02整理)

    目录 一.昨日内容回顾 一 计算机基础之编程 (一) 什么是编程语言 (二) 什么是编程 (三) 为什么编程 二 计算机组成 (一) CPU (二) 存储器 (三) I/O设备 (四) 多核CPU ( ...

随机推荐

  1. 201621123006 《Java程序设计》第8周学习总结

    1. 本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 2. 书面作业 ArrayList代码分析 1.1 解释ArrayList的contains源代码 源代码如下: 由源代码可 ...

  2. MySQL 服务正在启动 .MySQL 服务无法启动。系统出错。发生系统错误 1067。进程意外终止。

    MySQL 服务正在启动 .MySQL 服务无法启动.系统出错.发生系统错误 1067.进程意外终止. 检查了一个晚上才发现是---配置问题 #Path to installation directo ...

  3. pycharm 设置py文件的默认模版头部信息

    pycharm 设置py文件的默认模版头部信息,打开设置settings 进入File->settings->Editor->File and Code Templates-> ...

  4. linux中~和/区别

    /是指根目录  就是所有目录最顶层的目录~指的是你当前用户的主目录  如果是root用户的话就是/root/目录    如果是其他用户的话就是/home/下以你用户名命名的用户 在linux里面,~/ ...

  5. rabbitmq学习(三):rabbitmq之扇形交换机、主题交换机

    前言 上篇我们学习了rabbitmq的作用以及直连交换机的代码实现,这篇我们继续看如何用代码实现扇形交换机和主题交换机 一.扇形交换机 1.生产者 /** * 生产者 */ public class ...

  6. Keep On Movin

    上回书说道不愿透露姓名的巨巨还剩下一个数组,这个数组记录了他学习c++ 语言的过程. 现在这个数组a里有一些字符,第i个字符的数量是a[i].巨巨想用这些字符来构造一些回文串好让他的程序通过编译. 他 ...

  7. 《DSP using MATLAB》Problem 3.3

    按照题目的意思需要利用DTFT的性质,得到序列的DTFT结果(公式表示),本人数学功底太差,就不写了,直接用 书中的方法计算并画图. 代码: %% -------------------------- ...

  8. bzoj 2007 [Noi2010]海拔——最小割转最短路

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2007 一个点的高度一定不是0就是1.答案一定形如一个左上角的连通块全是0的点.一个右下角的连 ...

  9. volatile的本质

    1. 编译器的优化 在本次线程内, 当读取一个变量时,为提高存取速度,编译器优化时有时会先把变量读取到一个寄存器中:以后,再取变量值时,就直接从寄存器中取值:当变量值在本线程里改变时,会同时把变量的新 ...

  10. CentOS查看显卡及GPU相关信息

    lspci  | grep -i vga 这样就可以显示机器上的显卡信息,比如 [root@localhost conf]# lspci | grep -i vga01:00.0 VGA compat ...