一:编程与编程的目的

  1.什么是语言?什么是编程语言?

    语言是一个事物与另一个事物沟通的介质。

    编程语言是程序员与计算机沟通的介质。

  2.什么是编程?为什么要编程?

    编程是程序员将自己想要让计算机做的事按照某种编程语言的语法规范表达出来,表达的结果就是程序,程序是一系列文件。

    编程是为了让计算机按照人的思维去工作,从而解放人力。

二:计算机组成

  1.控制器

    控制器是CPU的指挥系统,负责控制计算机其他硬件的工作

  2.运算器

    负责计算机的数学运算和逻辑运算,同控制器并称为CPU,相当于人的大脑。

  3.存储器

    存储器分为内存和外存:

      内存:基于电工作,相当于人的记忆

         优点:存取速度快

         缺点:断电数据会丢失,只能用来临时保存数据

      外存:比如硬盘

         优点:数据永久保存,断电也不会消失

         缺点:存取速度慢

  4.输入设备input

    如鼠标、键盘

  5.输出设备output

    如显示器、打印机

  6.补充

    1. 计算机组成三大核心硬件为:CPU、内存、硬盘

    2. 一个完整的计算机系统有三层:应用软件、操作系统、计算机硬件

    3. 世界上第一个CPU是intel生产的8086,后来将这种架构的CPU统称为x86。

        世界上常用的两种CPU种类为精简指令集(RISC)和复杂指令集(DISC),x86属于复杂指令集。

        CPU分为32位和64位,x64是x86-64的简称。CPU具有向下兼容性,即64位系统可以运行32位的软件。

    4. 硬盘分为机械硬盘和固态硬盘:

      机械硬盘:基于磁工作,由磁道、柱面、扇区组成,扇区典型值为512字节,存取靠扫描磁头的动作和旋转磁盘的配合。

      固态硬盘:基于电工作,存取速度比机械硬盘快。

    5. 程序最先都存放于硬盘中,站在硬件角度,程序运行时:程序相关数据从硬盘读入内存,CPU从内存中取出指令\数据然后运行。

     所以程序运行时数据最先都是产生在内存

三:操作系统

  1.什么是操作系统

    操作系统本质上也是软件,用于协调、控制、管理计算机硬件和应用软件资源

    应用程序是通过操作系统间接的控制硬件

  2.操作系统开机时启动过程  

    1.计算机加电

    2.BIOS开始运行,检测硬件:cpu、内存、硬盘等

    3.BIOS读取CMOS存储器中的参数,选择启动设备

    4.从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)

    5.根据分区信息读入bootloader启动装载模块,启动操作系统

    6.然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户

       按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核。然后初始有关的表格(如进程表),穿件需要的

       进程,并在每个终端上启动登录程序或GUI

四:存储器

  8bit = 1Byte

  1024Byte = 1KB

  1024KB = 1MB

  1024MB  = 1GB

  1024GB = 1TB

  1024TB = 1PB

  平均寻道时间(找磁道的时间)+平均延迟时间(转半圈的时间)= 一次 IO时间

  5MS(取决于物理工艺,目前无法优化)+4MS (以7200转磁盘为例)= 9MS  

   

    

    

     

day1 计算机组成、操作系统的更多相关文章

  1. 1、了解计算机与操作系统发展阶段 2、选择一个具体的操作系统,结合计算机与操作系统的发展阶段,详细了解其渊源、发展过程、趋势,整理成简洁美观的图文博客发布。 Windows Mac os x Unix Linux Android 等。

    1.了解计算机与操作系统发展阶段 操作系统并不是与计算机硬件一起诞生的,它是在人们使用计算机的过程中,为了满足两大需求:提高资源利用率.增强计算机系统性能,伴随着计算机技术本身及其应用的日益发展,而逐 ...

  2. 了解计算机与操作系统发展阶段以及android操作系统的发展史

    计算机与操作系统发展阶段 计算机的发展: 第一代(1946-1957年),电子管计算机 第二代(1958-1964年),晶体管计算机 第三代  (1964—1970年),集成电路数字机 第四代 (19 ...

  3. Python编程Day1——计算机组成与操作系统

    一..计算机基础 二.编程与编程的目的 1.什么是语言? 一种事物与另外一种事物沟通的介质 编程语言是程序员与计算机沟通的介质 2.什么是编程? 程序员把自己想要让计算机做的事用编程语言表达出来,编程 ...

  4. DAY1 计算机组成和操作系统

    一.编程与编程目的 1.编程语言的定义 编程语言是人与计算机之间沟通的介质 2.什么是编程 编程就是程序员通过编程语言让计算机实现所想做的事 3.编程的目的 解放人力,让计算机按照人的逻辑思维进行工作 ...

  5. 【重学计算机】操作系统D3章:存储管理

    1. 存储管理的基本概念 逻辑地址:用户地址,从零开始编号 一维逻辑地址:(地址) 二维逻辑地址:(段号: 段内地址) 主存储器的复用方式 按分区:主存划分为多个固定/可变分区,一个程序占一个分区 按 ...

  6. 【重学计算机】操作系统D1章:计算机操作系统概述

    1. 计算机软硬件系统 冯诺伊曼结构 以运算单元为核心,控制流由指令流产生 程序和数据存储在主存中 主存是按地址访问,线性编址 指令由操作码和地址码组成 数据以二进制编码 其他:参考<重学计算机 ...

  7. 了解计算机与操作系统发展阶段--Windows

    Windows发展的30多年,其实就是整个计算机应用,从小众化向大众化消费领域,快速前行的30多年. 让我们来一起温故下Windows这么多年的发展历程,看看Windows,是如何在市场和技术这两种力 ...

  8. 计算机1&操作系统硬件

    1.什么是编程语言? 语言是一种事物与另外一种事物沟通的表达方式   而编程则是人与计算机沟通的表达方式 2:什么是编程? 编程就是程序员用计算机能理解的的表达方式,把程序员想要表达的内容写到文件里, ...

  9. python学习Day1 计算机原理编程思维

    一.学习思想:3W+1H   学什么(what).为什么学(why).用在哪里(where).怎么用(how) 学习编程语言重在代码量.代码量.代码量! 二.计算机五大组成部分,三大核心: 五大组成部 ...

随机推荐

  1. javascript 动态修改css样式

    方法一:改变外联css文件,这里不讲这个. 方法二:通过改变claaName来改变样式,语法: obj.className = "style2"; //或者 obj.setAttr ...

  2. BZOJ4559: [JLoi2016]成绩比较(dp 拉格朗日插值)

    题意 题目链接 Sol 想不到想不到.. 首先在不考虑每个人的真是成绩的情况下,设\(f[i][j]\)表示考虑了前\(i\)个人,有\(j\)个人被碾压的方案数 转移方程:\[f[i][j] = \ ...

  3. 洛谷P4590 [TJOI2018]游园会(状压dp LCS)

    题意 题目链接 Sol 这个题可能是TJOI2018唯一的非模板题了吧.. 考虑LCS的转移方程, \[f[i][j] = max(f[i - 1][j], f[i][j - 1], f[i - 1] ...

  4. Django之初识Ajax

    1.简介 AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步的Javascript和XML”.即使用Javascript语言与服务器进行异步交互,传输的数据 ...

  5. ionic APP二维码插件 地址

     二维码插件地址第一个   https://github.com/kyocn/BarcodeScanner git网址 下载网址  https://github.com/kyocn/BarcodeSc ...

  6. java读写properties工具代码

    package test612; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExc ...

  7. 【极简】如何挑选合适的百度BCC,并安装宝塔控制面板

    1.前期有百度云账号,登陆系统控制台,点击产品"云服务器BCC". 2.关闭绑定快照策略,选择购买弹性公网IP,如果选择不需要,服务器就没有对外的IP,只能在内网内使用,所以这里要 ...

  8. Navicat Premium for Mac 破解版地址

    找了好几个都不能使用    试了一下这个  可以使用 放地址:http://www.orsoon.com/Mac/85386.html

  9. Android Touch事件传递机制 二:单纯的(伪生命周期) 这个清楚一点

    转载于:http://blog.csdn.net/yuanzeyao/article/details/38025165 在前一篇文章中,我主要讲解了Android源码中的Touch事件的传递过程,现在 ...

  10. Android为TV端助力 关于线程的那些事

    今天发现之前自己一直有个误区,new Runnable(run()方法){}原来它不是一定创建一个线程 如果用主线程的handler去post(Runnable),他就不会创建子线程,而是在主线程上执 ...