1、程序是什么?
程序是一组能让计算机识别和执行的指令,主要是有算法+数据结构组成。
2、计算机的五大部件及冯诺依曼体系
输入设备、输出设备、存储器、运算器、控制器
CPU由运算器和控制器组成
运算器,完成各种算数运算、逻辑运算、数据传输等数据加工处理
控制器,控制程序的执行
存储器,用于记忆程序和数据,例如内存
输入设备,将数据或者程序输入到计算机中,例
如键盘、鼠标
输出设备,将数据或程序的处理结果展示给用户,
例如显示器、打印机等,磁盘为输入输出设备
3、计算机语言的分类
3.1、计算机语言:
人与计算机之间的交互的语言
3.2、机器语言:
一定位数组成二进制的0和1的序列,称为机器指令,机器指令的结合就是机器语言
3.3、汇编语言:
用一些助记符号代替机器指令,称为汇编语言,如:ADD A B将寄存器A 的数和寄存器B的数相加的数放到寄存器A 中
汇编语言写好的程序需要汇编程序转换成机器指令
3.1.1、低级语言:
面向机器的语言,包括机器语言,汇编语言
不同的机器不能通用,不同的机器需要不同的机器指令或汇编程序
3.1.2、高级语言:
接近自然和数学语言的计算机语言
高级语言手写要书写源程序,通过编译程序吧源程序转换成机器的指令程序
3.1.3、编译语言和解释语言的区别:
编译语言:把源代码转换成目标机器的cpu指令
解释语言:解释后转换成字节码,运行在虚拟机上,解释器执行中间码
如:C 、C++等语言的源代码需要本地编译
java、Pyhton、C#的源代码需要被解释器编译成中间码(Bytecode),在虚拟机上运行
高级语言的发展
1、非结构化语言:
编号或标签,GOTO,子程序可以有多个入口和出口 如:ADD A B将寄存器A 的数和寄存器B的数相加的数放到寄存器A 中
有分支,循环
2、结构化语言:
任何基本结构只允许是唯一入口或出口
有顺序,分支,循环,废弃GOTO
3、面向对象语言
更加接近人类认知世界的方式,万事万物抽象成对象,对象间关系抽象成类和继承
封装、继承、多态
4、函数式语言:
古老的编程范式,用用在数学奇数,并行处理的场景,引入到了很多现代高级语言中。
Python解释器
官方CPython:C语言开发,最广泛的Python解释器
IPython:一个交互式,功能增强的Cpython
PyPy:Python语言写的Python解释器,JIT技术,动态编译Pyhton代码
Jython:Python的源代码编译成java的字节码,跑在JVM
IronPython:与Jython类似,运行在.NET平台上的解释器,Python代码被编译成.NET字节码
Python基础语法
1、注释使用#号和‘’‘ ’‘’
单行注释一般使用#号
多行注释一般使用‘’‘ 注释内容 ’‘’
2、数字表示
Python3开始不区分长整型和短整型,所以只有int类型
主要分为:整数、浮点数、复数
3、变量声明
变量的定义规则:
只能用字母,数字,下划线,不能以数字开头,不能使用关键字,例如不能使用class int def等关键字
Python的语言类型:
a、python是动态语言,强类型语言
1)静态编译语言:
实现声明变量类型,类型不能再改变, 如:int a = 10
编译时检查
2)动态编译语言:
不用事先声明类型,随时可以赋值为其他类型,赋值即定义
编译时不知道是什么类型,很难判断
3)强类型语言:
不同类型之间的操作,必须先强制类型转换为同一类型,如 : print(‘a’ + str (1))或print(‘a‘ + ‘1‘)
运算符:
a、算数运算符:
+ - * / ** // %
** :求幂
// :整除,返回商的整数部分向下取整
% :求余
b:成员运算符:
in 、 not in
c、比较运算符:
== > < <= >=
!= 、 <> :表示不等于
d、逻辑运算符:
and 、 or 、not
e、赋值运算符:
= += -= += /= **= //= %=
f、位运算符:
& :按位与
| :按位或
~ :按位取反
注:
is 和 "=="的区别:
== 判断左右两边的值是否相等
is 判断内存地址是否相等, id()值来判断
进制
常用的进制有二进制、八进制、十进制、十六进制;主要遵循逢二进1、逢八进1,逢16进1
0b1110 表示二进制,转成十进制为14 0o4表示八进制,转换成十进制为33 0xF8为十六进制,转换成十进制为248 = 16 * 15 + 8
使用jupyter直接可输出
0b1110 0o41 0xF8 使用bin()、hex()、otc()函数可将十进制转换成想转换的进制数
常见的进制表
原文:https://www.cnblogs.com/alrenn/p/12535156.html