对计算机学习的理解

学习了这么久的计算机,下面说说我对计算机的理解:

学好计算机首先必须得打好基础:

计算机体系结构,操作系统,编译原理,编程语言例如C/C++,编译器熟练运用例如VC,GCC,数据结构,算法,数据库,计算机网络,这些基础知识你不一定要很精通,但是必须明白其中的原理。

对计算机程序的理解:数据结构+算法

对这句话的理解有一个过程,最开始是简单的理解,然后是复杂的理解,现在是理解得简单。

1.数据结构:是对数据的组织,例如有十个整数,我们如果定义十个变量去存放,肯定是会影响效率的。这时候就需要用到数组。

一切皆数据结构:文件是数据结构,socket是数据结构,输入输出是数据结构,内存缓冲和内存块是数据结构。注意:最原始的数据结构是输入和输出(标准),那是所有数据的来源,而且所有的数据结构需要从先经过操作系统(其实也是内存,只是操作系统内核里的内存而已),在到应用程序内存。例如:文件是先从硬盘到操作系统再到应用程序,标准输入和输出是从I/O设备到操作系统再到应用程序,sokect是先到网卡再到操作系统再到应用程序。

2.算法:无非是对数据的操作:包括添加(定义变量,初始化),删除(系统退出自动删除,或者调用函数删除),查找,更新。也就是数据从一个地方转移到另外一个地方而已,转移是通过函数API来完成,所以会有源数据和目的数据(删除只有一个数据对象)。

3.逻辑关系,数据结构和算法确定之后,程序员要写出高效的程序,或者说在时间和空间上都更高效就需要进行逻辑控制。使用循环for和while,以及判断语句if else和swith 和case来判断

今天先写到这里,如果有更深的理解再更新。

4.我们最开始学编程的时候,都是一些helloword啊一些数学计算什么的,这个时候我们还没有用到数据结构,只是用到了一些简单的变量,也就无所谓算法了。用到算法和数据结构很简单的一个例子就是给你十个数让你求和。当然会有更深的。

一切源于对计算机的热爱
原文地址:https://www.cnblogs.com/liuweilinlin/p/2560297.html