算法复杂度分为时间复杂度和空间复杂度,一个好的算法应该具体执行时间短,所需空间少的特点。 随着计算机硬件和软件的提升,一个算法的执行时间是算不太精确的。只能依据统计方法对算法进行估算。我们抛开硬件和软件的因素,算法的好坏直接影响程序的运行时间。 我们看一下小例子: int value = 0; // ...
分类:
编程语言 时间:
2017-06-01 20:58:34
阅读次数:
203
目录 一、为何要学习计算机基础 2 二、计算机硬件介绍 3 2.1 处理器 4 2.1.1 寄存器的分类 4 2.1.2 寄存器的维护 5 2.1.3 处理器设计的演变 5 2.1.4 内核态与用户态 5 2.1.5 内核态与用户态切换 6 2.1.6 异常处理 6 2.1.7 多线程和多核芯片 6 ...
分类:
其他好文 时间:
2017-05-26 13:23:29
阅读次数:
237
操作系统简介 一、为何要有操作系统: 计算机系统非常庞大难懂,程序员写程序时需要搞懂计算机系统,效率很低。 操作系统的出现缓解了程序员的大部分工作,操作系统管理及优化计算机硬件,程序员不需要全部搞懂计算机系统就可写代码编写软件。 软件在操作系统的基础上运行,间接使用硬件。 二、操作系统的位置: 操作 ...
分类:
其他好文 时间:
2017-05-26 13:18:53
阅读次数:
130
GNU GRUB(简称“GRUB”)是一个来自GNU项目的启动引导程序。GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。 mbr是硬盘的主引导记录,属于引导区 ...
分类:
系统相关 时间:
2017-05-25 15:38:40
阅读次数:
203
iOS 多线程 先看一篇阮一峰写关于进程和线程的文章,快速了解线程的相关概念。 随着现在计算机硬件的发展,多核心、高频率的cpu越来越普及,为了充分发挥cpu的性能,在不通的环境下实现cpu的利用最大化,多线程技术在这个时候显得越发重要。同时,在程序中合理的使用多线程,可以让程序变得更加有效、靠谱。 ...
分类:
移动开发 时间:
2017-05-24 19:16:13
阅读次数:
281
UNIX是一个计算机操作系统,一个用来协调、管理和控制计算机硬件和软件资源的控制程序。 1.UNIX操作系统的特点:多用户和多任务; a) 多用户表示在同一时刻可以有多个用户同时使用UNIX操作系统而且他们互不干扰; b) 多任务表示任何一个用户在同一时间可以在UNIX操作系统上运行多个程序 2. ...
分类:
系统相关 时间:
2017-05-24 16:01:14
阅读次数:
191
计算机语言发展史 机器语言 每一个计算机只能理解他自己的机器语言。机器语言对于计算机来说就是自然语言了,由计算机硬件的设计者定义。机器语言通常有数字串组成(最终被简化成01),对于人类来说,机器语言过于繁琐。 这个任务的实现:基本费用(basepay)+超时费用(overpay)=总费用(total ...
分类:
编程语言 时间:
2017-05-23 21:43:45
阅读次数:
172
一 计算机操作系统简介 1 计算机操作系统简介1)掌握操作系统的定义:操作系统是一个用来协调、管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用程序之间。、2)掌握操作系统的内核的定义:操作系统的内核是一个管理和控制程序,负责管理计算机的所有物理资源,其中包括。文件系统、内存管理、设备管理和 ...
分类:
系统相关 时间:
2017-05-23 16:33:48
阅读次数:
203
操作系统的概念 为何要有操作系统: 程序员无法把所有的硬件操作细节都了解到,管理这些硬件并且加以优化使用是非常繁琐的工作,这个工作就是操作系统来干的,是程序员从繁琐的工作中解脱出来。 操作系统的位置: 操作系统由两部分组成: 1.内核 2.系统调用 操作系统位于计算机硬件与应用软件之间,本质也是一个 ...
分类:
其他好文 时间:
2017-05-22 16:47:52
阅读次数:
102
互联网本质就是一系列的网络协议 计算机硬件装上操作系统,再装上软件就可以正常使用了,但是只能自己使用,如果要和其他计算机通信,那就必须得有网络协议。 如图: 互联网协议 (internet pretocol suite),它就是连接在计算机之间的,定义计算机如何介入internet,以及接入的计算机 ...
分类:
其他好文 时间:
2017-05-22 16:47:18
阅读次数:
221