计算机基础知识和Python的一些杂物

——————————– 一些计算机知识 ———————————–

冯诺依曼体系架构

冯诺依曼体系是指,计算机由以下五部分组成
输入设备、储存器、运算器、控制器、输出设备

储存器:例如内存,暂时储存数据的(坏处是内存里的信息掉电丢失;好处就是快)。

输入设备:键盘、鼠标、摄像头等。

输出设备:显示器、打印机等。

运算器:CPU的一部分,进行运算的。

控制器:控制程序的进行。

(有些设备即使输入设备,也是输出设备。例如硬盘,归属于IO设备。IO设备,直接和输入输出设备打交道,缺点就是慢。所以,要在CPU和IO设备之间,加一个内存。)

(CPU中有寄存器和多级缓存Cache。从CPU角度看,内存太慢了,寄存器可以和CPU的频率一致。)

(数据如果能放在内存中,可以大大提高效率。)

(怎么使用内存空间更为高效,是很重要的问题。)

计算语言的运行

C、C++等语言的源代码需要本地编译。
Java、Python等源代码需要被解释器编译成中间代码(Bytecode),然后在虚拟机上运行。

程序=算法+数据结构

我们要十分精确的掌握数据结构,数据在计算机中类型和组织方式;
算法就是解决问题的办法,算法有优劣之分。

(计算机没办法表达精确的小数,例如:无限循环小数、π。)

pyenv

pyenv(python environment),用于Python环境的部署,和Python的多版本管理。
pyenv的使用:
global 全局改变版本
shell改变当前shell的版本
local改变当前所在目录的版本

——————————–Python基础———————————

标识符:

一个名字,用来指代一个值。(这个值储存在内存中)
只能有字母、下划线和数字组成,不能以数字开头。
python 关键字,不要作为标识符。
python大小写敏感。

变量:

变量就是在赋值后,可以改变的标识符。python 中没有常量,只有变量。

字面常量:

一个单独的量,例如:12、’abc’、’3.141592654’

python语言类型:

python 是动态语言(无需事先声明变量的类型,赋值后可以随时改变类型)、且为强类型语言(python中不同类型之间的操作,必须进行强制类型转换)。

运算符:

算术运算符:
+ - * / // % **

位运算符:
& | ~ ^ << >>

例:
32//8相当于32>>3.
# 2的5次方 //2的3次方;32转换为二进制是00100000,往右移三位是00001000,等于8。

^ 异获(相异出1)

比较运算符:
== != > <
返回的是一个bool值

逻辑运算符:
与 或 非 and or not
短路运算符(在于谁放前面,谁放后面):
and,如果前面的是False,那后面就没必要算了,这个逻辑表达式直接给False。
or,如果前面是True,后面就没必要算了,直接给True。

赋值运算符:
= += -= *= /= %=

原码、反码、补码:

原码:就是转化成二进制的码
例:7 => 0b0111

反码:正数反码与原码相同;负数的反码,符号位不变,其余位按位取反。

补码:正数补码与原码相同:负数的补码转化成原码,符号位不变,其余位按位取反,再+1。

猜你喜欢

转载自blog.csdn.net/LittleHuang950620/article/details/81292131