编程入门概述

计算机

  1. 计算机包括硬件(hardware)和软件(software)两部分。
    硬件包括计算机中可以看得见的物理部分。
    而软件提供看不见的指令。这些指令控制硬件并且使得硬件完成特定的任务。软件包括系统软件和应用软件。
  2. 程序设计
    定义:创建(或开发)软件。软件包含了指令,告诉计算机做什么。
    应用场景:软件遍布我们周围。除了个人计算机,飞机、汽车、手机甚至烤面包机中,同样运行着软件。
  3. 程序设计语言
    软件开发人员在称为程序设计语言的强大工具的帮助下创建软件。
  4. 如何选择该学习哪种程序设计语言?
    程序设计语言有很多种,每种语言都是为了实现某个特定的目的而发明的。
    你会困惑哪种语言是最好的。事实上,没有“最好”的语言。每种语言都有它的长处和短处。
    经验丰富的程序员知道各种语言擅长的应用场景,因此,会尽可能的掌握各种不同的程序设计语言。
    如果你掌握了一种编程语言,应该会更容易上手其它的编程语言。关键是学习如何使用程序设计方法来解决问题。

硬件

硬件组成

编程入门概述_第1张图片

冯诺依曼结构

编程入门概述_第2张图片
总结:

  • 输入设备如电脑、鼠标等。
  • 输出设备如显示器、打印机等。
  • 存储器主要分为内存、外存。
    内存快,存取快。所以内存主要用于CPU频繁使用数据的存取,断电会消失;外存如硬盘、光盘、U盘等,使得数据可持久化,不至于断电消失。
  • CPU包含了运算器和控制器。
    运算器是对数据的四则运算、逻辑运算等基础运算,相当于计算机的一种工具。
    控制器接受内存的指令对输入输出设备、存储器控制。

CPU

  • 中央处理器(Central Processing Unit,CPU)是计算机的大脑。它从内存中获取指令,然后执行这些指令。
  • 包括:控制单元(control unit)和算术/逻辑单元(arithmetic/login unit)。
    控制单元:用于控制和协调其他组件的动作。
    算术/逻辑单元:用于完成数值运算(+、-、*、/)和逻辑运算(比较)。
  • 每台计算机都有一个内部时钟,该时钟以固定速度发射电子脉冲。时钟速度越快,在给定的时间段内执行的指令就越多。速度的计量单位是赫兹(Hz),1Hz相当于每秒1个脉冲。随着CPU速度不断提高,目前以千兆赫(GHz)来表述。
  • 最初一个CPU只有一个核(core)。核是处理器中实现指令读取和执行的部分。一个多核
    CPU是一个具有两个或者更多独立核的组件。可提高CPU的处理能力。

编程入门概述_第3张图片
在这里插入图片描述
这里的CPU是英特尔品牌;核是i5第7代;主频2.50GHz,主频即CPU的时钟频率,时钟频率的高低在很大程度上反映了CPU速度的快慢;两个主频表示两个核;HQ表示标压、对应的为低电压。


存储器

外存

  • 磁盘(磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘(Floppy Disk,简称软盘),如今常用的磁盘是硬磁盘(Hard disk,简称硬盘)。)
  • 光盘(CD、DVD)
  • U盘(插在USB接口的存储器)

内存

比特(bit)和字节(byte)

  • 在讨论内存前,先清楚数据是如何存储在计算机中的。
  • 计算机就是一系列的电路开关。每个开关存在两种状态:关(off)和开(on)。如果电路是开的,它的值是1。如果电路是关的,它的值是0。
  • 一个0或者一个1存储为一个比特(bit),是计算机中最小的存储单位。
  • 计算机中是最基本的存储单元是字节(byte) 。每个字节由8个比特构成。
  • 计算机的存储能力是以字节和多字节来衡量的。如下:
    千字节(kilobyte,KB) = 1024B
    兆字节(megabyte,MB) = 1024KB
    千兆字节(gigabyte,GB) = 1024MB
    万亿字节(terabyte,TB) = 1024GB

内存

  • 内存:由一个有序的字节序列组成,用于存储程序及程序需要的数据。
  • 一个程序和它的数据在被CPU执行前必须移到计算机的内存中。
  • 每个字节都有一个唯一的地址。见下图。使用这个地址确定字节的位置,以便于存储和获取数据。
  • 一个计算机具有的内存越多,它的运行速度越快,但是此规律是有限制的。
  • 内存与CPU一样,也构建在表面嵌有数百万晶体管的硅半导体芯片上。但内存芯片更简单、更低速、更便宜。
    编程入门概述_第4张图片
  • 实测发现:内存存取数据的速度比硬盘的存取速度快10倍,在某些环境里,硬盘和内存之间的速度差距可能会更大。而CPU的速度比内存不知还要快多少倍。当我们把程序从硬盘放到内存以后,CPU就直接在内存运行程序,这样比CPU直接在硬盘运行程序就要快很多。
  • 内存解决了一部分CPU运行过快,而硬盘数据存取太慢的问题。 提高了我们的电脑的运行速度。内存就如同一条“高速车道”一般,数据由传输速度较慢的硬盘通过这条高速车道传送至CPU进行处理!
  • 但内存是带电存储的(一旦断电数据就会消失),而且容量有限,所以要长时间储存程序或数据就需要使用硬盘。
  • 内存在这里起了两个作用:
  1. 保存从硬盘读取的数据,提供给CPU使用
  2. 保存CPU的一些临时执行结果,以便CPU下次使用或保存到硬盘
    编程入门概述_第5张图片
    编程入门概述_第6张图片

总结
内存主要用来解决硬盘和CPU存取速度不匹配的问题,有了内存后,先把要处理的数据传送到内存,这样CPU多次使用起来就很方便,另外CPU产生临时执行结果要先放到内存,因为大概率参加下次运算,也就是多次使用的数据如果每次都从硬盘拿太慢了。当程序终止时才把处理结构先放到内存,再存储到硬盘。其实内存主要方便了CPU的频繁存取。
补充
● 只读存储器(ROM)
ROM表示只读存储器(Read Only Memory),在制造ROM的时候,信息(数据或程序)就被存入并永久保存。这些信息只能读出,一般不能写入,即使机器停电,这些数据也不会丢失。
●随机存储器(RAM)
内存
内存
随机存储器(Random Access Memory)表示既可以从中读取数据,也可以写入数据。当机器电源关闭时,存于其中的数据就会丢失。
●高速缓冲存储器(Cache)
Cache也是我们经常遇到的概念,也就是平常看到的一级缓存(L1 Cache)、二级缓存(L2 Cache)、三级缓存(L3 Cache)这些数据,它位于CPU与内存之间,是一个读写速度比内存更快的存储器。当CPU向内存中写入或读出数据时,这个数据也被存储进高速缓冲存储器中。当CPU再次需要这些数据时,CPU就从高速缓冲存储器读取数据,而不是访问较慢的内存,当然,如需要的数据在Cache中没有,CPU会再去读取内存中的数据。
●当电脑卡的时候,要么是主频低,主频就相当于单位时间能处理多少事;要么内存不够,比如内存2G比较小,内存满了,此时又需要存取新的数据,就会清理内存中相对不常用的数据,当需要用到刚清理掉的数据时有需要重新加载。当然内存足够大就不会清理相对不常用的数据,毕竟内存中的数据都是常用数据,只是在内存不够且相对不常用即优先级不高的情况下才清理,导致需要重新加载,导致运行速度变慢;另外还可以将机械硬盘换为固态硬盘,原理是固态存取速度相对机械硬盘快。
编程入门概述_第7张图片
在这里插入图片描述

输入输出设备

  • 常见的输入设备:键盘(keyboard)和鼠标(mouse)
  • 常见的输出设备:显示器(monitor)和打印机(printer)
  • 显示器屏幕分辨率:是指显示设备水平和垂直方向上显示的像素(px)数。
    分辨率可以手工设置。
    分辨率越高,图像越锐化、越清晰。
    编程入门概述_第8张图片
  • LED:自发光源,那个地方需要什么颜色就发什么光,黑色就是不发光
    LCD:白光,用不同颜色的东西去遮挡,黑色地下也发白光,只是用黑色的东西去遮挡

通信设备

计算机可以通过通信设备进行联网。
常见的设备有:

  • 拨号调制解调器:使用的是电话线,传输速度可达56 000bps(bps:每秒比特)
  • DSL(数字用户线):使用的也是电话线,但传输速度叫上面的快20倍
  • 电缆调制解调器:利用有线电视电缆进行数据传输,通常速度比DSL快。
  • 网络接口卡(NIC):将计算机接入局域网(LAN)的设备。局域网通常用于大学、
    商业组织和政府组织。速度甚至可达1000Mbps
  • 无线网络:在家庭、商业和学校中极其常见。计算机可通过无线适配器连接到局域
    网或internet上。

软件

系统软件(操作系统)

编程入门概述_第9张图片

应用软件

B/S软件

  • 如Web
    编程入门概述_第10张图片
  • 万维网是无数个网络站点和网页的集合,它们在一起构成了因特网Internet最主要的部分(因特网也包括电子邮件、Usenet以及新闻组)。它实际上是多媒体的集合,是由超级链接连接而成的。我们通常通过网络浏览器上网观看的,就是万维网的内容。
  • 互联网、因特网、万维网三者的关系是:互联网包含因特网,因特网包含万维网,凡是能彼此通信的设备组成的网络就叫互联网。所以,即使仅有两台机器,不论用何种技术使其彼此通信,也叫互联网。国际标准的互联网写法是Internet,因特网是互联网的一种。因特网可不是仅有两台机器组成的互联网,它是由上千万台设备组成的互联网。
  • 因特网使用TCP/IP协议让不同的设备可以彼此通信。但使用TCP/IP协议的网络并不一定是因特网,一个局域网也可以使用TCP/IP协议。判断自己是否接入的是因特网,首先是看自己电脑是否安装了 TCP/IP协议,其次看是否拥有一个公网地址(所谓公网地址,就是所有私网地址以外的地址)。
  • 因特网是基于TCP/IP协议实现的,TCP/IP协议由很多协议组成,不同类型的协议又被放在不同的层,其中,位于应用层的协议就有很多,比如FTP、HTTP、SMTP。只要应用层使用的是HTTP协议,就称为万维网(World Wide Web)。之所以在浏览器里输入百度网址时,能看见百度网提供的网页,就是因为您的个人浏览器和百度网的服务器之间使用的是HTTP协议在交流。
  • 总结:
    互联网:指由若干电子机网络相互连接而成的网络。
    英特网:目前全球最大的一个电子计算机互联网。
    万维网:是无数个网络站点和网页的集合,它们在一起构成了因特网Internet最主要的部分,万维网是英特网里的一项服务。

C/S软件

  • 例如QQ等客户端软件

IT定律之计算机行业发展规律

  • 摩尔定律(Moore’s Law)
    表示每一美元每隔18-24个月可以买到的计算机性能提升一倍
  • 反摩尔定律(Reverse Moore’s Law)
    表示一个IT公司隔18-24个月卖相同性能、同样多的产品,营业额却只有一半,这个公司花费了同样的精力却收获一半。所以反摩尔定律逼着这些硬件公司赶上摩尔定律的速度,其实就是内卷啦。
  • 安迪-比尔定律(Andy and Bill’s Law)
    比如你买了一个带有最新硬件并与之匹配的电脑,电脑性能比较好。过了段时间新的操作系统推出,电脑更新操作系统,此时硬件和操作系统不是那么匹配,就会性能下降。你可能会去买一台新的电脑与新的操作系统匹配,但是此时又推出新的操作系统,你的电脑性能又下降了,就造成了硬件的提升并没有带给用户与之匹配的体验,因为被操作系统吃掉了硬件性能。此时用户花钱更新设备,但是各大厂商就赚钱了,他们拿赚到的前继续研发硬件和软件,这中间操作系统总比硬件先进,如此循环。结果就是用户花钱多了,资本家赚钱了,但是计算机也进步了。资本的力量加速竞争和社会进步的同时人民也会被剥削。

计算机发展史上的鼻祖

编程入门概述_第11张图片
编程入门概述_第12张图片
编程入门概述_第13张图片

你可能感兴趣的:(JavaSE,java,编程语言,操作系统,网络)