目录

什么是编程语言

1,什么是语言,中文,英语,日语,语言是拿来沟通交流。

2,编程语言:和计算机交流的一种介质

什么是编程

表达自己的想法

编程:通过编程语言做一些事情,写一堆.py/.obj/css文件

为什么要编程

编程的目的:替代劳动力,然后才帮人类完成一些具体的事情

目录

计算机的组成

CPU

控制器 (控制)

运算器(运算)

存储器

主存(内存)

优点:存储速度快

缺点:容量小,断电即消失

外存

优点:容量大,断电不会消失

缺点:速度慢

I/O设备(Input/Output设备)

输入设备

输入信息,键盘/鼠标/麦克风/U盘

输出设备

输出信息,显示屏/打印机/U盘

目录

多核CPU

一个CPU相当于一个大脑,多核CPU--》计算机同时拥有多个CPU,同一时刻处理多件事情(多进程)

32位和64位

计算机如何存储图片:计算机只认识0(低电频)和1(高电频),图片本质就是一串0和1

鼠标点击--》低电频低电频低电频高电频低电频--》00010

光盘--》凹0凸1刻印

32位--》计算机一次性能处理32个0和1

64位--》计算机一次性能处理64个0和1

32位和64位本质上是同一种东西

安装包是64位的(一次性给你64个0和1),计算机是32位的(一次性能接收32个0和1)

安装包是32位,计算机是64位的

向下兼容

机械硬盘工作原理

凹凸凹凸凹凸 010101

机械手臂

读取数据

磁道

存储数据

扇面

划分了磁道,多个扇面(512kb,计算机一次性从机械硬盘上读取512kb数据)其实就是一个盘(区)

平均寻磁道时间

由于工业水平限制--》5ms

平均延迟时间

7200r/min的电脑

\[7200/60=120r/s \\
1/120=0.0083s=8.3ms \\
(8.3+0)/2=4.15ms
\]

平均寻找数据时间

\[5+4.15=9.15ms
\]

固态硬盘

基于电容存储,数学的算法

优点:不需要机械手臂;基于电存储

目录

什么是文件

存储信息的介质,操作系统提供给你的一个虚拟的概念,这个虚拟的概念可以用来存储信息,帮你滑动了机械手臂

操作系统有什么用

操作系统直接和硬件交互,可以给程序提供端口,讲硬件的复杂操作简单化。

应用程序的的启动

1.双击qq--》给操作系统提供指令(企鹅操作系统提供给你的) (找到QQ在外存的位置)

2.操作系统发给CPU,CPU让内存去读取外存中QQ的数据

3.数据读入内存,启动QQ

计算机的组成 (有了操作系统之后)

1.应用程序(软件):和操作系统交互

2.操作系统(软件):和硬件交互

3.硬件:硬件直接交互

临时操作系统 ( ROM存储器)

计算机出厂的时候就写死了,他会去CMOS存储器上调用操作系统的路径,只负rom责寻找操作系统的路径

临时内存 (CMOS存储器)

用电池供电,存储了操作系统的路径 (重装操作系统修改启动盘的位置,改的就是这个),存储了时间

1.开机,启动临时操作系统

2.临时操作系统区CMOS存储器上找到操作系统的路径

3.启动操作系统,临时操作系统关闭

目录

计算机只认识0和1

编码

0001--》a

0011--》b

0100--》c

0101--》d

0111--》+

0001 0011--》ab

机器语言

写0和1

000101110011 a+b --》(设备) --》低低低高

早期只有顶尖科学家才能使用计算机

优点:执行速度非常快,直接和硬件交互

缺点:开发速度非常慢

汇编语言

add --》 0111

add(a,b)(汇编语言 )--》(设备) --》 000101110011(机器语言) --》(设备)--》低低低高(高低压电频)

优点(相较于机器语言):开发效率高

缺点(相较于机器语言):执行效率低

高级语言

a+b(解释型语言) --》(设备)--》a+b(高级语言/编译型语言) --》(设备--翻译器)--》add, a, b (汇编语言)--》(设备)--》000101110011(机器语言) --》(设备)--》低低低高(高低压电频)

编译型语言 (通过设备的翻译形式)

类似于谷歌翻译,一次性翻译所有代码位机器代码

#这串代码表示:打印1+2的值
x=1
y=2
print(x+y)
'''
hey anna
how are you
good night
hey anna
how are you
good night
hey anna
how are you
good night
''' '00101010110011000101010111000100010101100101010101010101010101011001011101'-->直接运行

优点 (相较于解释型语言):执行效率高

缺点 (相较于解释型语言):开发效率低(调试bug非常复杂)

解释型语言 (通过设备的翻译形式)

类似同声传译,说一句翻译一句,解释性语言的翻译器是通过编译型语言写出来的

# 这串代码表示:打印1+2的值
x=1
y=2
print(x+y)
'''
hey anna
how are you
good night
hey anna
how are you
good night
hey anna
how are you
good night
''' '''
0000101010
运行
0101101001
运行
0101010101
运行
0000101010
运行
0101101001
运行
0101010101
运行报错
0000101010
运行
0101101001
运行
0101010101
运行
'''

优点(相较于编译型而言):开发效率高

缺点(相较于编译型而言):执行效率低

目录

计算机只认识0和1

编码

0001--》a

0011--》b

0100--》c

0101--》d

0111--》+

0001 0011--》ab

机器语言

写0和1

000101110011 a+b --》(设备) --》低低低高

早期只有顶尖科学家才能使用计算机

优点:执行速度非常快,直接和硬件交互

缺点:开发速度非常慢

汇编语言

add --》 0111

add(a,b)(汇编语言 )--》(设备) --》 000101110011(机器语言) --》(设备)--》低低低高(高低压电频)

优点(相较于机器语言):开发效率高

缺点(相较于机器语言):执行效率低

高级语言

a+b(解释型语言) --》(设备)--》a+b(高级语言/编译型语言) --》(设备--翻译器)--》add, a, b (汇编语言)--》(设备)--》000101110011(机器语言) --》(设备)--》低低低高(高低压电频)

编译型语言 (通过设备的翻译形式)

类似于谷歌翻译,一次性翻译所有代码位机器代码

#这串代码表示:打印1+2的值
x=1
y=2
print(x+y)
'''
hey anna
how are you
good night
hey anna
how are you
good night
hey anna
how are you
good night
''' '00101010110011000101010111000100010101100101010101010101010101011001011101'-->直接运行

优点 (相较于解释型语言):执行效率高

缺点 (相较于解释型语言):开发效率低(调试bug非常复杂)

解释型语言 (通过设备的翻译形式)

类似同声传译,说一句翻译一句,解释性语言的翻译器是通过编译型语言写出来的

# 这串代码表示:打印1+2的值
x=1
y=2
print(x+y)
'''
hey anna
how are you
good night
hey anna
how are you
good night
hey anna
how are you
good night
''' '''
0000101010
运行
0101101001
运行
0101010101
运行
0000101010
运行
0101101001
运行
0101010101
运行报错
0000101010
运行
0101101001
运行
0101010101
运行
'''

优点(相较于编译型而言):开发效率高

缺点(相较于编译型而言):执行效率低

目录

计算机只认识0和1

编码

0001--》a

0011--》b

0100--》c

0101--》d

0111--》+

0001 0011--》ab

机器语言

写0和1

000101110011 a+b --》(设备) --》低低低高

早期只有顶尖科学家才能使用计算机

优点:执行速度非常快,直接和硬件交互

缺点:开发速度非常慢

汇编语言

add --》 0111

add(a,b)(汇编语言 )--》(设备) --》 000101110011(机器语言) --》(设备)--》低低低高(高低压电频)

优点(相较于机器语言):开发效率高

缺点(相较于机器语言):执行效率低

高级语言

a+b(解释型语言) --》(设备)--》a+b(高级语言/编译型语言) --》(设备--翻译器)--》add, a, b (汇编语言)--》(设备)--》000101110011(机器语言) --》(设备)--》低低低高(高低压电频)

编译型语言 (通过设备的翻译形式)

类似于谷歌翻译,一次性翻译所有代码位机器代码

#这串代码表示:打印1+2的值
x=1
y=2
print(x+y)
'''
hey anna
how are you
good night
hey anna
how are you
good night
hey anna
how are you
good night
''' '00101010110011000101010111000100010101100101010101010101010101011001011101'-->直接运行

优点 (相较于解释型语言):执行效率高

缺点 (相较于解释型语言):开发效率低(调试bug非常复杂)

解释型语言 (通过设备的翻译形式)

类似同声传译,说一句翻译一句,解释性语言的翻译器是通过编译型语言写出来的

# 这串代码表示:打印1+2的值
x=1
y=2
print(x+y)
'''
hey anna
how are you
good night
hey anna
how are you
good night
hey anna
how are you
good night
''' '''
0000101010
运行
0101101001
运行
0101010101
运行
0000101010
运行
0101101001
运行
0101010101
运行报错
0000101010
运行
0101101001
运行
0101010101
运行
'''

优点(相较于编译型而言):开发效率高

缺点(相较于编译型而言):执行效率低

编程 --》完成具体的事情 --》 帮人类干活

写一个应用程序(一定要联网)

程序一定要通过网络通信

木桶效应

A人的枪打到B人的头

网络的瓶颈效应

网络通信的时间(10ms)远远大于执行程序的时间(0.01ms)--》程序的执行效率没必要考虑了 --》 (网络的应用程序)解释型语言 --》 Python

操作系统(单机操作的应用程序) --》 编译型语言

物理学: 光谱

操作系统 1G内存

微内核 0.1G内存+0.1G网络通信 10G放到服务器

《计算机操作系统》

day 02 预科的更多相关文章

  1. day 02 作业 预科

    目录 作业 作业 ==1.什么是编程== 通过使用编程语言做一些事情,表达一些自己的想法. ==2.简述计算机五大组成.== 计算机由cpu ,运算器 ,控制器,存储器(外存,内存) 输入设备 输出设 ...

  2. Kotlin中变量不同于Java: var 对val(KAD 02)

    原文标题:Variables in Kotlin, differences with Java. var vs val (KAD 02) 作者:Antonio Leiva 时间:Nov 28, 201 ...

  3. Android游戏开发实践(1)之NDK与JNI开发02

    Android游戏开发实践(1)之NDK与JNI开发02 承接上篇Android游戏开发实践(1)之NDK与JNI开发01分享完JNI的基础和简要开发流程之后,再来分享下在Android环境下的JNI ...

  4. iOS系列 基础篇 02 StoryBoard 故事板文件

    iOS基础 02 StoryBoard 故事板文件 目录: 1. 故事板的导航特点 2. 故事板中的Scene和Segue 3. 本文最后 在上篇HelloWorld工程中有一个Main.storyb ...

  5. [转]Tesseract 3.02中文字库训练

    下载chi_sim.traindata字库下载tesseract-ocr-setup-3.02.02.exe 下载地址:http://code.google.com/p/tesseract-ocr/d ...

  6. Java多线程系列--“JUC锁”02之 互斥锁ReentrantLock

    本章对ReentrantLock包进行基本介绍,这一章主要对ReentrantLock进行概括性的介绍,内容包括:ReentrantLock介绍ReentrantLock函数列表ReentrantLo ...

  7. Oracle Recovery 02 - 常规恢复之不完全恢复

    背景:这里提到的常规恢复指的是数据库有完备可用的RMAN物理备份. 实验环境:RHEL6.4 + Oracle 11.2.0.4 单实例. 二.常规恢复之不完全恢复:部分数据丢失 2.1 重做日志文件 ...

  8. 异步编程系列第02章 你有什么理由使用Async异步编程

    p { display: block; margin: 3px 0 0 0; } --> 写在前面 在学异步,有位园友推荐了<async in C#5.0>,没找到中文版,恰巧也想提 ...

  9. star ccm+ 11.02安装

    STAR CCM+是CD-Adapco公司的主打软件,其安装方式较为简单,这里以图文方式详细描述STAR CCM+11.02安装过程. 1 安装准备工作2 正式安装3 软件破解4 软件测试 1 安装准 ...

随机推荐

  1. PV、TPS、QPS是怎么计算出来的?(转载的)

    QPS = req/sec = 请求数/秒 [QPS计算PV和机器的方式] QPS统计方式 [一般使用 http_load 进行统计] QPS = 总请求数 / ( 进程总数 * 请求时间 ) QPS ...

  2. webService和Restful

    restful是一种架构风格,其核心是面向资源,更简单:而webService底层SOAP协议,主要核心是面向活动:两个都是通过web请求调用接口 RESTful是什么: 首先要了解什么是REST,R ...

  3. 自动化办公:python操作Excel

    1.安装 -- upgrade pippython -m pip install --- install pypipip install pypi 执行python setup.py install进 ...

  4. Operation之变换操作符

    buffer buffer方法的作用是缓冲组合, 第一个参数是缓冲时间, 第二个参数是缓冲个数, 第三个参数是线程 该方法简单来说就是缓存Observable中发出的新元素, 当元素达到某个数量, 或 ...

  5. WebGL学习笔记二——绘制基本图元

    webGL的基本图元点.线.三角形 gl.drawArrays(mode, first,count) first,代表从第几个点开始绘制即顶点的起始位置 count,代表绘制的点的数量. mode,代 ...

  6. centos7安装配置MariaDB10

    1:添加 MariaDB yum 仓库 vi /etc/yum.repos.d/MariaDB.repo在该文件中添加以下内容保存: [mariadb] name = MariaDB baseurl ...

  7. Centos 7.6 部署 Jumpserver 1.5.0

    1.基础设置 # 版本说明 操作系统:centos7. jumpserver: # 升级所有包同时也升级软件和系统内核 yum update -y # selinux配置 setenforce sed ...

  8. SQL Server ---- 创建好的表修改不了字段

    注意这个  是  sqlserver  2008  R2 当修改字段后出现来这个错误 解决方法 1.点击工具   选择选项 2.选择 designers     把阻止更改点掉就行了 建议,改好之后最 ...

  9. Appium移动端测试--基础预热

    目录 Android自动化环境准备 需要安装的软件: Appium多端架构与自动化 Android自动化前提依赖: 获取App的信息: Android常用命令 adb shell 常用命令列表: An ...

  10. JAVA知识点总结篇(三)

    抽象类 使用规则 abstract定义抽象类: abstract定义抽象方法,只有声明,不需要实现: 包含抽象方法的类是抽象类: 抽象类中可以包含普通方法,也可以没有抽象方法: 抽象类不能直接创建,可 ...