编程语言分类和Python解释器介绍
主要内容:
一、编程语言分类和介绍
二、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解释器介绍的更多相关文章
- day02-操作系统、编程语言分类及python安装
目录 操作系统 编程语言分类 安装python解释器 操作系统 操作系统有什么用 操作系统能接受外部指令转化成0和1,并把一些对硬件的复杂操作简化成一个个简单的接口,作为中间人连接硬件和软件 计算机三 ...
- 编程语言分类及python所属类型
编程语言分类及python所属类型 编程语言主要从以下几个角度为进行分类:编译型和解释型.静态语言和动态语言.强类型定义语言和弱类型定义语言. 编译和解释的区别是什么? 编译器是把源程序的每一条语句都 ...
- python解释器介绍以及Pycharm的破解
python语言是弱类型解释型语言,弱类型指的是没有强制规定它的类型. 由于是解释型语言,则必有解释器与其匹配,根据不同的工作环境以及需求,python的解释器有很多种, 官方推荐的是CPython, ...
- Python 解释器介绍
举个栗子: -c cmd用法 python -c ' import os ; print ("is ok ") ' 或者(注意引号形式) python -c "impor ...
- 【2022-06-16】Python解释器的下载安装与使用
一.Python解释器介绍 什么是Python解释器? Python是一门解释型语言,解释器是Python运行必不可少的一种工具.所以,我们搭建Python环境,本质上就是对Python进行配置和定制 ...
- 基础知识:编程语言介绍、Python介绍、Python解释器安装、运行Python解释器的两种方式、变量、数据类型基本使用
2018年3月19日 今日学习内容: 1.编程语言的介绍 2.Python介绍 3.安装Python解释器(多版本共存) 4.运行Python解释器程序两种方式.(交互式与命令行式)(♥♥♥♥♥) 5 ...
- day02编程语言,Python语言介绍,Python解释器安装,环境变量,Python代码执行,pip,应用程序使用文件的三步骤,变量,变量的三大组成,比较,pycharm
复习 重点: 1.进制转换:二进制 与十六进制 2.内存分布:栈区 与堆区 # 二进制1111转换十六进制 => 8 4 2 1 => f 10101100111011 => 2a7 ...
- 编程语言分类,安装python解释器,变量
1.编程语言分类 机器语言:直接使用二进制指令去编写程序,直接操作硬件 优点:执行效率高 缺点:开发效率低 汇编语言:用英文标签取代二进制指令去编写程序,直接进操作硬件 优点:开发效率高于机器语言 缺 ...
- 编程语言分类 + python解释器的安装 + jupyter的使用(day 02整理)
目录 一.昨日内容回顾 一 计算机基础之编程 (一) 什么是编程语言 (二) 什么是编程 (三) 为什么编程 二 计算机组成 (一) CPU (二) 存储器 (三) I/O设备 (四) 多核CPU ( ...
随机推荐
- 在laravel视图中直接使用{{ csrf_token() }}被翻译成英文显示的处理方法
在表单中加一个input框在放入{{ csrf_token() }}就可以了: 方法如下: <input type="hidden" name="_token&qu ...
- C++设计模式之备忘录模式
备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态.这样以后就可将该对象恢复到原先保存的状态[DP].举个简单的例子,我们玩游戏时都会保存进度,所保存的进度以文件的 ...
- java的初始化(编程思想)
6.成员初始化 java尽量保证:所有变量在使用前都能得到恰当的初始化.对于方法的局部变量,java以编译错误的形式来贯彻这种保证. 如果类的成员变量时基本类型,那么没有初始化给默认值 在类里定义一个 ...
- CH1808 Milking Grid
题意 POJ2185 数据加强版 描述 Every morning when they are milked, the Farmer John's cows form a rectangular gr ...
- graphql cli 开发graphql api flow
作用 代码生成 schema 处理 脚手架应用创建 项目管理 安装cli npm install -g graphql-cli 初始化项目(使用.graphqlconfig管理) 以下为demo de ...
- 【转】VC++ 也有 Refactoring 功能了
原文网址:http://blog.csdn.net/yapingxin/article/details/18923095 分类: C++2014-02-04 14:00 2688人阅读 评论(0) 收 ...
- linux之 LVM扩容
1. 查看本机现在磁盘的情况[root@oralce10g ~]# df Filesystem 1K-blocks Used Available Use% Mounted on/dev/mapper/ ...
- windows上如何安装Sqlite
一.安装 下载地址:http://www.sqlite.org/download.html 将Precompiled Binaries for Windows下的包下载下来sqlite-dll-win ...
- 【解决Jira】Chrome提示Java插件因过期而遭到阻止(JIRA上传截屏截图)
最近经常被这个问题所困扰:用Chrome访问JIRA上传截屏截图时,地址栏下面弹出通知,提示JAVA插件已过期.但是由于公司要求统一开发环境和设置,不能更新到最新版,就像这样: 结果网页上的Java就 ...
- SQL Server 查询优化器运行方式
一.结合实际,谈索引使用的误区 理论的目的是应用.虽然我们刚才列出了何时应使用聚集索引或非聚集索引,但在实践中以上规则却很容易被忽视或不能根据实际情况进行综合分析.下面我们将根据在实践中遇到的实际问题 ...