本文目录一览:
- 1、计算机的基本知识都有哪些?
- 2、电脑基础知识入门
- 3、大学计算机基础知识点整理
- 4、学电脑键盘基本知识
- 5、计算机基础知识考点
- 6、计算机基础知识都包括哪些?
计算机的基本知识都有哪些?
计算机的基本知识有操作系统原理、数据结构、网络原理是比较重要的计算机基础知识,另外还包括数据库原理、算法设计、编译原理、电子电路、编程语言等知识。
1、操作系统原理。
操作系统是学习计算机技术的重要基础,通过学习操作系统体系结构、操作指令、任务调度、并发管理、资源管理、权限管理、安全管理等内容,能够对计算机形成一个较为系统的理解,为后续的学习打下一个扎实的基础。
2、网络原理。
当今是互联网时代,计算机网络知识的重要程度不言而喻。网络原理涉及到网络体系结构、协议、数据通信管理、安全等内容,另外还涉及到如何操作交换机、路由器等网络设备。学习计算机网络要注重实验,通过实验能够建立数据通信过程等画面感。
3、编程语言和数据结构。
编程语言是操作计算机的重要工具,是一定要掌握的重点内容,程序设计本质上就是算法设计和数据结构的结合,所以在学习数据结构之前应该掌握编程语言的使用,对于初学者来说,C、Java、Python等语言都是不错的选择。
电脑基础知识入门
电脑基础入门知识:
1、CPU型号怎么看:
CPU是一台电脑的核心,而目前笔记本市场基本被Intel(英特尔)的CPU垄断。而Intel的CPU型号命名还算比较有规律。
以i7-6920HQ为例:
四位数的头一个数字是6指的是代际,也就是是英特尔第六代处理器。目前英特尔在市面上是4、5、6三代处理器并存。老于4代的处理器现在比较少见,一般也不推荐。
920是它的SKU值,可以理解为是一个编号。用来区分不同性能的CPU型号。
数字后面紧跟着的字母是H,代表的是处理器的功耗/性能类别。类似的有U(超低功耗15W)、M(仅出现在5代以前)、H(高性能35W/45W)。
需要注意的是:功耗大不仅意味着更大的耗电量,也表示CPU的发热量越大。进而对笔记本的散热系统有更高的要求。所以主打高性能的笔记本(比如游戏本),几乎没有轻薄、长续航的。
最后一个产品线后缀,有Q(四核处理器)、K(开放超频)两种情况。而双核、不可超频的处理器没有这个后缀,也是最常见的。
什么?看完了还是不懂怎么选?简单来说,如果你在乎功耗(省电)的话,代际越新越省电。比如6代比4代更省电。而在同一代中,U比H省电,而H又比HQ/HK省电。
2、关于电脑性能:
如果你想了解性能的话,这就有些麻烦了。
诸如i7i5i3这样的说法,基本不靠谱。因为这种说法仅仅在同一代处理器,同一功耗级别下才成立。如果跨代、跨系列地比较,就会出现诸如i5-6300HQ性能强于i7-6600U、i3-6100H和i7-4610Y性能差不多,这样不太好理解的情况。
所以光看型号判断性能真的是不太靠谱。为了方便起见,我推荐一个方便(但并非完全严谨)的方法给大家:查Passmark评分。
Passmark评分在很大程度上可以代表一个处理器的性能水平,Passmark评分越高代表CPU的性能越强,可以作为大家选购的参考。如果你还是没什么概念的话,根据我自己的经验,Passmark评分在3000左右,就可以保证基本的上网、办公、看全高清视频流畅。
不过还是那句,这个评分仅仅作为一种简捷的判断、选购依据,并非完全严谨的。
另外从2015年开始,英特尔又推出了CoreM(酷睿M)系列处理器,主打超低功耗(4.5W),无需风扇散热。m系列的命名规则跟i系列类似。相信大家可以触类旁通,这里就不赘述了。
3.显卡型号怎么看?
和英特尔相似,笔记本上的独立显卡大部分来自NVIDIA(英伟达)。不过相比之下NVIDIA显卡的命名就简单得多。
显卡型号显示960M。其中9是代机,也就是第九代NVIDIA显卡。目前市面上的笔记本以9系列为主,也有一定数量的8系列。
后面两位数代表的是等级,一般是从10到80,数字越大性能越强,相应也越耗电。后缀M表示针对笔记本优化(性能低于桌面版,所以功耗和发热也更低)。
今年NVIDIA还增加了MX后缀的显卡,可以理解为小改款,性能比M的版本小有提升。而GTX的前缀,只有850M、950M或者以上的显卡才有,是高性能的代表。显卡和CPU类似,显卡性能越高,功耗、发热量也越高。
4.关于内存:
一般我们只需要关注3个参数即可:内存的容量、内存的代际、内存的频率。容量大家都好理解,代际和频率可能需要简单提一下。目前笔记本中常见的,一般是DDR31600(第三代DDR内存,频率1600MHz)和DDR42133(第四代DDR内存,频率2133MHz)。前者更加普遍,而后者则是未来发展的趋势。
其实比起这些参数,其实更加关注笔记本的内存升级空间。早些年的笔记本,一般有两个内存槽(占用一个空余一个),方便用户自己升级内存。
但现在不少笔记本基于商业上的考虑、或是为了将笔记本做得更轻薄。只配有一个内存槽,或者直接把内存焊在主板上。让自己升级内存变得非常困难,甚至不可能。
大学计算机基础知识点整理
1、计算机组成原理
如果你不是做操作系统/驱动程序的,直接和硬件打交道的机会很少,因为操作系统已经把他们屏蔽掉了,提供了抽象的API给我们使用。
但是还必须理解冯诺依曼体系的结构,CPU和内存,硬盘,各种外设之间的关系,寄存器、缓存等知识。CPU有哪些指令,如何执行这些指令,如果实现数组,结构体,函数调用,这就涉及到汇编的知识。像原码,反码,补码,定点数、浮点数的表示和运算也是编程中必备的知识,几乎每种语言都要涉及。
现在很多语言都是在虚拟机上运行的,你只要是了解了计算机的组成原理,再去看哪些虚拟机,就会发现概念都是相通的。另外CPU中的缓存,缓存一致性协议,DMA的异步思想都会在应用层中有所体现。《编码》是一个更加科普性,但是也更加有趣的讲组成原理的书。
2、操作系统
操作系统是比较枯燥的,站在应用层的角度,我认为重点是掌握操作系统对外提供的抽象,包括进程、线程,文件,虚拟内存,以及进程间的通信问题。
几乎所有的编程语言都会涉及到对多进程或者多线程编程的支持,特别是多线程的并发编程,所以必须得搞明白他们的本质是什么,线程都有哪些实现方式。得真正地体会到“进程是资源分配的最小单位,线程是调度的最小单位。”这句话的含义。
几乎所有的编程语言都会涉及到锁和死锁,最好在最底层理解锁是怎么实现的。需要理解虚拟内存和物理内存直接的关系,分段和分页,文件系统的基本原理。对于进程的调度,页面分配/置换算法,磁盘的调度算法,I/O系统,我认为优先级比较低。
3、数据库
这个和日常工作结合极其紧密,不用我再多说,包括最基本的SQL,各种范式,事务及其隔离级别,事务的实现方式,索引及其实现方式,B+树等等。
4、编译原理
你一辈子也许都不会去写一个编译器,但是很有可能会利用现成的工具去生成/操作一个抽象语法树(AST),甚至可以会写一个DSL(领域特定语言)。所以你得理解词法分析、语法分析、语义分析,中间代码生成,代码优化这个基本编译的过程。
扩展资料
Cache的原理
如果存在(命中),则直接返回该数据;如果不存在(失效),再去访问内存——先把内存中的相应数据载入缓存,再将其返回处理器。
提供“高速缓存”的目的是让数据访问的速度适应CPU的处理速度,通过减少访问内存的次数来提高数据存取的速度。
Cache技术所依赖的原理是”程序执行与数据访问的局部性原理“,这种局部性表现在两个方面:时间局部性:如果程序中的某条指令一旦执行,不久以后该指令可能再次执行,如果某数据被访问过,不久以后该数据可能再次被访问。
学电脑键盘基本知识
总括:键盘总体上可分为四个大区,分别为:功能键区,打字键区,编辑控制键区,数字键盘区。
1、功能键区:一般键盘上都有F1~F12共12个功能键。
2、打字键区:既键盘上的26个字母所在位置区。
3、编辑控制键区:pageup home等等这几个键所在区。
4、数字键盘区。
键盘是用于操作计算机设备运行的一种指令和数据输入装置,也指经过系统安排操作一台机器或设备的一组功能键(如打字机、电脑键盘)。键盘也是组成键盘乐器的一部分,也可以指使用键盘的乐器,如钢琴、数位钢琴或电子琴等,键盘有助于练习打字。
键盘是最常用也是最主要的输入设备,通过键盘可以将英文字母、汉字、数字、标点符号等输入到计算机中,从而向计算机发出命令、输入数据等。还有一些带有各种快捷键的键盘。
随着时间的推移,渐渐的市场上也出现独立的具有各种快捷功能的产品单独出售,并带有专用的驱动和设定软件,在兼容机上也能实现个性化的操作。
构造
外壳,有的键盘采用塑料暗钩的技术固定在键盘面板和底座两部分,实现无金属螺丝化的设计,所以分解时要小心以免损坏。
为了适应不同用户的需要,常规键盘具有CapsLock(字母大小写锁定)、NumLock(数字小键盘锁定)、ScrollLock(滚动锁定键)三个指示灯(部分无线键盘已经省略这三个指示灯),标志键盘的当前状态。
这些指示灯一般位于键盘的右上角,不过有一些键盘采用键帽内置指示灯,这种设计可以更容易地判断键盘当前状态,但工艺相对复杂,所以大部分普通键盘均未采用此项设计。
计算机基础知识考点
第一节 计算机的诞生、发展与作用
1.计算机的诞生和发展
⑴计算机的诞生:
世界:1946年世界上第一台电子计算机在美国宾西法尼亚大学诞生,取名为"ENIAC"
中国:
1958年研制了第一台电子管计算机,速度每二千次。
1964~1965年研制出第二代晶体管计算机,1965年制造速度每秒7万次。
1971年研制第三代集成电路计算机
1972年每秒100万次的大型集成电路计算机研制成功
1976年研制成功每秒200万次的计算机
先后自行研制成功了"银河"系列的巨型计算机:
"银河"于1983年问世,其运算速度为每秒1亿次;
"银河II"于1992年诞生,其运算速度为每秒10 亿次;
"银河III"于1997年通过国家鉴定,其运算速度为每秒为130亿次。
"神威I"计算机
大规模并行计算机系统命名为"神威I"高性能计算机。它每秒3480亿浮点的峰值运算速度,使"神威I"计算机位列世界高性能计算机的第48位。
⑵计算机的发展:
①按用途分类:
可分为专用机和通用机(如pc机);
②以"代"分类:
第一代(1946-1956):电子管器件;机器语言或符号机器语言,科学计算应用为主。结构上以CPU为中心,使用机器语言,速度慢,存储量小,主要用于数值计算。
第二代(1957-1963):晶体管器件;结构上以存储器为中心,高级语言,管理程序与操作系统;应用扩展至事务处理领域。
第三代(1964-1973):集成电路(IC)器件; 结构上以存储器为中心,增加了多种外部设备;软件得到一定发展,计算机处理图象、文字和资料功能加强,远程终端联机系统,更完整的系统软件与更广泛的应用领域。
计算机基础知识都包括哪些?
基础知识重要,但是具体来说,哪些点重要呢?
今天我就试图总结一下,也欢迎大家补充。
信息的表示和处理
计算机如何表示整数:有符号数和无符号数,尤其是如何用补码表示负数,数字的取值范围。
计算机如何表示浮点数,为什么小数的二进制表示法只能近似表示十进制小数。
数值的转换、移位
这几点非常重要,因为几乎所有的编程语言都有数据类型,而最基本数据类型必然包括整数和浮点数。
搞不清这些表示和运算,在编程中就会遇到一些稀奇古怪的问题。
从汇编层面理解程序的执行
顺序、分支、循环、函数调用、数组、结构体等在汇编层面是怎么实现的,寄存器和内存是怎么使用的。
理解了这些其实也就理解了冯诺依曼计算机体系结构,这是计算机学科一个基础性的东西。
知道程序在底层是怎么运转的, 对于学习各种虚拟机有很大的帮助,比如JVM,它要解析执行的是字节码,字节码本质上要表达的就是这些东西,只不过有所扩展。
理解了栈帧,就能理解函数调用的本质,递归,以及尾递归的实现。还有安全相关的概念,如缓冲区溢出这个臭名卓著的漏洞及其防范办法。
进程和线程
程序员必备的知识,不了解这个,简直是无法编程。
需要掌握进程的地址空间,代码在哪里,堆在哪里,栈在哪里。
要准确理解进程和线程之间的关系,为什么说进程是拥有资源的基本单位, 线程是CPU调度的基本单位?
进程切换和线程切换之间的区别和联系。
他们是如何创建,执行,有哪些状态,状态之间的转换。 由此会涉及到并发和并行,线程之间的竞争和合作。
锁的本质(硬件层面),乐观锁,悲观锁,死锁等问题。
线程的实现方式,用户级线程和内核级线程的对应方式。
在编程的过程中,有些知识点会直接使用,如多线程编程,锁。 还有一些概念能用到很多地方,例如CAS,不仅仅是编程语言的概念,还能在更新数据库时使用。再比如你理解了线程的实现方式,迅速就能掌握go语言中并发的手段:goroutine。
存储器的层次结构
Tomcat用了多线程执行请求,Redis用了单线程来处理请求,Node.js也用了单线程来,这是为什么? 秘密都在存储器的层次结构。
人类制造的计算机设备之间有着巨大的速度差异:
总之,CPU超级快,内存比较快,硬盘非常慢,网络更慢, 这个速度差异是IT行业的一个核心问题,人类想了很多办法试图去弥补这个差异:多线程,缓存,异步,多路复用,硬件层面的DMA。
记着下面这张图,每当你遇到某个软件的特性的时候,想一想和它有什么关系:
数据结构和算法
它的重要性我罗嗦过很多次了,不用再重复了, 我就举个最简单的例子: 理解了B+ Tree才能理解MySQL的InnoDB的索引,理解了索引才能更好地优化查询,对吧?
计算机网络
现在的程序基本上都是网络程序, 所以这也是一个必备的基础知识,学习计算机网络的一大好处就是和工作直接相关,能直接使用,比较有动力。
HTTP协议肯定跑不掉,TCP,UDP也得会,尤其是TCP可靠传输的原理:如何在一个不可靠的网络中进行可靠的传输, 这是无数前辈总结的经验,一定得掌握。
要理解什么是通信协议,也许某一天你自己就需要定制一个协议来传输数据。
分组交换是什么意思? 协议分层的本质是什么? 什么叫无状态的协议?
Socket相关的编程更是重点,尤其是涉及到服务器端高并发的时候,如何维持和处理这些海量的socket, epoll等技术就得上场了。
还有非常重要的HTTPs的基本原理,也是网络安全的精华所在:对称加密,非对称加密,消息摘要,数字证书,中间人攻击。
数据库
不多说,关系模型、范式、SQL、索引、事务等知识都得掌握,尤其是要了解他们的实现方式。
分布式的基础知识
这些已经偏向应用层面了,但是现在很多系统都是分布式的了,分布式就变成了一种基础知识。
系统通信:RPC, 消息队列等
负载均衡的原理
CAP原理,BASE原理,幂等性,一致性模型(强一致性,最终一致性.....)和相关协议(两阶段提交,Raft,Paxos......)
数据分片:取模算法,一致性Hash,虚拟桶
基本的设计思想
下面这几种设计思想对我影响很大,需要大家特别注意。但是掌握起来却很不容易,需要在实践中不断地体会:
正交:各个概念之间可以独立变化
抽象:抛弃细节,找到本质和共性
《深入理解计算机系统》一书中提到:“指令集是对CPU的抽象, 文件是对输入/输出设备的抽象, 虚拟存储器是对程序存储的抽象, 进程是对一个正在运行的程序的抽象, 而虚拟机是对整个计算机(包括操作系统、处理器和程序)的抽象。 如果你对这句话透彻理解了,说明对计算机系统的认识已经很深刻了。
分层:我只想和我的邻居打交道, 如网络协议,Web应用开发。
分而治之:大事化小,小事化了,架构设计必备。
关键点来了,怎么学习呢?
我原来的方式是先看书,看了很多书,数据结构,操作系统,汇编,网络...... 这种办法的最大问题就是枯燥(嗯,那时候还没有码农翻身这样用故事讲解技术的文章)。
理论多,实践少,很多知识点体会不深, 等到参与的项目多了,Coding多了,这些知识点才慢慢地鲜活起来。
一种更加有效的办法是从工作中用到的知识点出发,从这个知识点向外扩展,由点到线,由线到面,然后让各个层次都连接起来,形成一个立体的网络。
切记,学习是一个螺旋上升的过程,想要上升就得深度思考,多问几个为什么。
比如工作中用到了Redis,你在学习过程中发现这个Redis用了单线程来处理读写请求,为什么要这么做? 对于成千上万的请求它是如何处理的? 然后再联想一下别的软件:Tomcat为什么不这么干? 想回答这些问题,需要发掘很多基础知识。
这样做的次数多了,积累到一定程度,量变就会引起质变,整个系统就被你看透了,你的知识又扩大了一圈,更多的疑问出现了......