编程基础知识简介

前言

本文为编程入门介绍,仅介绍一些很基础很基础的CS知识作为个人学习笔记用。

一、概述

1.1 计算机介绍

计算机包括 硬件(hardware)软件(software) 两部分。硬件包括计算机中可以 看得见的物理部分。而软件提供看不见的指令。这些指令控制硬件并且使得 硬件完成特定的任务。

1.2 程序设计

1.2.1 定义

创建(或开发)软件。软件包含了指令,告诉计算机做什么。

1.2.2 应用场景

软件遍布我们周围。除了个人计算机,飞机、汽车、手机甚至烤 面包机中,同样运行着软件。

1.3 程序设计语言

1.3.1 概念

软件开发人员在称为程序设计语言的强大工具的帮助下创建软件。

1.3.2 选择

  • 没有“最好”的语言。每种语言都 有它的长处和短处。
  • 尽可能的掌握 各种不同的程序设计语言。
  • 学习如何使用程序设计方法来解决问题。

二、计算机硬件

2.1 体系结构

2.1.1 一般体系结构

1_计算机一般体系结构

在个人计算机上,总线搭建在主板上,主板是一个连接计算机各个部分的电路版。

2.1.2 冯诺依曼体系结构

2_冯诺依曼体系结构

冯·诺依曼体系结构是现代计算机的基础,现在大多计算机仍是冯·诺依曼计算机的组 织结构,只是作了一些改进而已,并没有从根本上突破冯体系结构的束缚。冯·诺依曼 也因此被人们称为“计算机之父”。

根据冯诺依曼体系结构构成的计算机,必须具有如下功能:

  • 把需要的程序和数据送至计算机中。
  • 必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。
  • 能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。
  • 能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作。
  • 能够按照要求将处理结果输出给用户。

2.2 中央处理器(CPU)介绍

2.2.1 概念

**中央处理器(Central Processing Unit,CPU)**是计算机的大脑。它从内存中获取指令,然 后执行这些指令。

现在的CPU都是构建在一块小小的硅半导体芯片上,这块芯片上包含数百万称为晶体管的小电路开关上,同于处理信息。

2.2.2 组成

2.2.2.1 控制单元(control unit)

用于控制和协调其他组件的动作。

2.2.2.2 算术/逻辑单元(arithmetic/login unit)

用于完成数值运算(+、-、*、/)和逻辑运算(比较)。

2.2.3 参数

2.2.3.1 时钟速度

每台计算机都有一个内部时钟,该时钟以固定速度发射电子脉冲。时钟速度越快,在给定的时间段内执行的指令就越多。速度的计量单位是赫兹(Hz),1Hz相当于每秒1个脉冲。随着CPU速度不断提高,目前以**千兆赫(GHz)**来表述。

1KHz=1024Hz

1MHz=1024KHz

1GHz=1024Mhz

2.2.3.2 核心数

最初一个CPU只有一个核(core)。核是处理器中实现指令读取和执行的部分。一个多核 CPU是一个具有两个或者更多独立核的组件。可提高CPU的处理能力。

2.2.4 IT行业三大定律

摩尔定律(Moore’s Law)

安迪-比尔定律(Andy and Bill’s Law)

反摩尔定律(Reverse Moore’s Law)

2.3 内存介绍

2.3.1 比特(bit)和字节(byte)

计算机就是一系列的电路开关。每个开关存在两种状态:关(off)和开(on)。如果电路 是开的,它的值是1。如果电路是关的,它的值是0。

一个0或者一个1存储为一个比特(bit,b)是计算机中最小的存储单位

计算机中是最基本的存储单元是字节(Byte,B) 。每个字节由8个比特构成。

计算机的存储能力是以字节和多字节来衡量的。如下:

千字节(kilobyte,KB) = 1024B

兆字节(megabyte,MB) = 1024KB

千兆字节(gigabyte,GB) = 1024MB

万亿字节(terabyte,TB) = 1024GB

2.3.2 概念

内存(也叫 Random-Access Memory,RAM):由一个有序的 字节序列组成,用于存储程序及程序需要的数据。

计算机CPU和内存的交互是最频繁的,内存是计算机的高速缓存区,用于弥补用户磁盘和CPU速度之间的巨大差距。

一个程序和它的数据在被CPU执行前必须移到计算机的内存中。

3_程序执行流程

一个计算机具有的RAM越多,它的运行速度越快,但是此规律是有限制的。

内存与CPU一样,也构建在表面嵌有数百万晶体管的硅半导 体芯片上。但内存芯片更简单、更低速、更便宜。

2.3.3 内存地址

4_内存地址

每个字节都有一个唯一的地址。使用这个地址确定字节的位置,以便于存储和获取数据。

2.3.4 内存作用

内存存取数据的速度比硬盘的存取速度快10倍以上,在某些环境里,硬盘和内存之间的速度差距可能会更大。而CPU的速度比内存不知还要快多少倍。当我们把程序从硬盘 放到内存以后,CPU就直接在内存运行程序,这样比CPU直接在硬盘运行程序就要快很多。

内存解决了一部分CPU运行过快,而硬盘数据存取太慢的问题。 提高了我们的电脑的运行速度。内存就如同一条“高速车道”一般,数据由传输速度较慢的硬盘通过这条高速车道传送至CPU进行处理。

但内存是带电存储的(一旦断电数据就会消失),而且容量有限,所以要长时间储存程序或数 据就需要使用硬盘。

2.4存储设备介绍

2.4.1 概念

内存中的信息在断电时会丢失。那我们可以考虑将程序和数据永久的保存在存储设备上。当计算机 确实需要这些数据时,再移入内存,因为从内存中读取比从存储设备读取要快得多。

2.4.2 分类

2.4.2.1 磁盘驱动器

每台计算机至少有一个硬盘驱动器。硬盘(hard disk) 用于永久的保存数据和程序。

2.4.2.2 光盘驱动器(CD和DVD)

CD的容量可达700MB。 DVD的容量可达4.7GB。

2.4.2.3 USB闪存驱动器

USB: Universal Serial Bus,通用串行总线。 可以使用USB将打印机、数码相机、鼠标、外部硬盘驱动器连接到计算机上。 USB闪存驱动器很小,可用于存储和传输数据的设备。

2.5 输入输出设备介绍

2.5.1 常见设备

常见的输入设备:键盘(keyboard)和鼠标(mouse)

常见的输出设备:显示器(monitor)和打印机(printer)

2.5.2 分辨率

指显示设备水平和垂直方向上显示的像素(px)数。分辨率可以手工设置并且分辨率越高,图像越锐化、越清晰。

2.6 通信设备介绍

计算机可以通过通信设备进行联网。

2.6.1 常见的通信设备

拨号调制解调器:使用的是电话线,传输速度可达56000bps(bps:每秒比特)

DSL(数字用户线):使用的也是电话线,但传输速度叫上面的快20倍

电缆调制解调器:利用有线电视电缆进行数据传输,通常速度比DSL快。

网络接口卡(NIC):将计算机接入局域网(LAN)的设备。局域网通常用于大学、 商业组织和政府组织。速度甚至可达1000Mbps

无线网络:在家庭、商业和学校中极其常见。计算机可通过无线适配器连接到局域 网或internet上。

三、操作系统

3.1 概念

操作系统(Operating System) 是运行在计算机上的最重要的程序,它可以管理和控制计算机的活动。

3.2关系

5_OS关系

3.2 操作系统的任务

  • 控制和监视系统的活动
  • 分配和调配系统资源
  • 调度操作

四、万维网

万维网(World Wide Web,www,环球信息网)常简称为Web,发明者蒂姆·伯纳 斯·李。

分为Web客户端和Web服务器程序。

WWW可以让 Web客户端(常用 浏览器) 访问浏览Web服务器上的页面

是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个有用的事物,称为一样“资源”;并且由一个全局“统一资源标识符”(URI)标识;这些资源通过 超文本传输协议(Hypertext Transfer Protocol) 传送给用户,而后者通过点击链 接来获得资源。

6_网络
万维网是无数个网络站点和网页的集合,它们在一起构成了因特网Internet最 主要的部分(因特网也包括电子邮件、Usenet以及新闻组)。它实际上是多 媒体的集合,是由超级链接连接而成的。我们通常通过网络浏览器上网观看的, 就是万维网的内容。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平