一:编程与编程的目的

  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. canvas学习笔记之2d画布基础的实现

    一. Canvas是啥 < canvas > 是一个可以使用脚本(通常是js)来绘图的HTML元素 < canvas > 最早由Apple引入WebKit,用于Mac OS X ...

  2. 【读书笔记】iOS-更改编辑器键的绑定

    一,Xcode-->Preferences--->Key Bindings. 参考资料:<Xcode实战开发>

  3. Python相关机器学习‘武器库’

    开始学习Python,之后渐渐成为我学习工作中的第一辅助脚本语言,虽然开发语言是Java,但平时的很多文本数据处理任务都交给了Python.这些年来,接触和使用了很多Python工具包,特别是在文本处 ...

  4. Android加载图片的策略

    实现图片缓存也不难,需要有相应的cache策略.这里我采用 内存-文件-网络 三层cache机制,其中内存缓存包括强引用缓存和软引用缓存(SoftReference),其实网络不算cache,这里姑且 ...

  5. (后端)sql手工注入语句&SQL手工注入大全(转)

    转自脚本之家: 看看下面的1.判断是否有注入;and 1=1;and 1=2 2.初步判断是否是mssql;and user>0 3.判断数据库系统;and (select count(*) f ...

  6. Appium+java 模拟键盘输入

    功能键   KEYCODE_CALL 拨号键 5 KEYCODE_ENDCALL 挂机键 6 KEYCODE_HOME 按键Home 3 KEYCODE_MENU 菜单键 82 KEYCODE_BAC ...

  7. 编程经验点滴----巧妙解决 Oracle NClob 读写问题

    最近一个新项目中,尝试在 Oracle 数据库中使用 NCLOB 来保存大的 xml 字符串. 在代码自动生成工具(通过 JDBC 驱动程序,读数据库表结构,自动生成对应的 java 代码,包含增加. ...

  8. Python 反射机制之hasattr()、getattr()、setattr() 、delattr()函数

    反射机制 先看看我对Java中反射机制的通俗理解:反射之中包含了一个“反”的概念,所以要想解释反射就必须先从“正”开始解释,一般而言,当用户使用一个类的时候,应该先知道这个类,而后通过这个类产生实例化 ...

  9. Scala并发编程【进阶】

    package com.dingxin.entrance import java.text.SimpleDateFormat import java.util.Date import scala.ac ...

  10. You (root) are not allowed to access to (crontab) because of pam configuration

    巡检发现一台Linux服务器上的作业没有如期发送邮件,登录服务器检查后发现作业并没有执行,于是检查一下crontab的设置.结果发现如下错误: [root@mylnx2 ~]# crontab -l ...