0 编程入门

  • 0.1 概述
  • 0.2 计算机硬件介绍
    • 0.2.1 中央处理器
    • 0.2.2 存储设备
    • 0.2.3 内存
    • 0.2.4 输入和输出设备
    • 0.2.5 通信设备
  • 0.3 计算机发展史上的鼻祖
  • 0.4 操作系统
  • 0.5 万维网
  • 0.6 职业发展与提升
  • 0.7 学习经验探讨

0.1 概述

计算机包括硬件(hardware)和软件(software)两部分。
硬件包括计算机中可以看得见的物理部分。
而软件提供看不见的指令。这些指令控制硬件并且使得硬件完成特定的任务。

程序设计:创建(或开发)软件。软件包含了指令,告诉计算机做什么。
程序设计语言有很多种,每种语言都是为了实现某个特定的目的而发明的。没有“最好”的语言。每种语言都有它的长处和短处。

0.2 计算机硬件介绍


0.2.1 中央处理器

中央处理器(Central Processing Unit,CPU)是计算机的大脑。它从内存中获取指令,然后执行这些指令。包括:控制单元(control unit)和算术逻辑单元(arithmetic/login unit)。 控制单元:用于控制和协调其他组件的动作。 算术逻辑单元:用于完成数值运算(+、-、*、/)和逻辑运算(比较)。

每台计算机都有一个内部时钟,该时钟以固定速度发射电子脉冲。时钟速度越快,在给 定的时间段内执行的指令就越多。速度的计量单位是赫兹(Hz),1Hz相当于每秒1个脉 冲。随着CPU速度不断提高,目前以千兆赫(GHz)来表述。

0.2.2 存储设备

内存中的信息在断电时会丢失。那我们可以考虑将程序和数据永久的保存在存储设备上。当计算机确实需要这些数据时,再移入内存,因为从内存中读取比从存储设备读取要快得多。存储设备主要有以下三种:磁盘驱动器、光盘驱动器、USB闪存驱动器。

0.2.3 内存

计算机就是一系列的电路开关。每个开关存在两种状态:关(off)和开(on)。如果电路是开的,它的值是1。如果电路是关的,它的值是0。一个0或者一个1存储为一个比特(bit),是计算机中最小的存储单位
计算机中是最基本的存储单元是字节(byte) 。每个字节由8个比特构成。
计算机的存储能力是以字节和多字节来衡量的。如下: 千字节(kilobyte,KB) = 1024B兆字节(megabyte,MB) = 1024KB 千兆字节(gigabyte,GB) = 1024MB 万亿字节(terabyte,TB) = 1024GB。
内存(也叫 Random-Access Memory,RAM):由一个有序的字节序列组成,用于存储程序及程序需要的数据。
一个程序和它的数据在被CPU执行前必须移到计算机的内存中
每个字节都有一个唯一的地址。见图。使用这个地址确定字节的位置,以便于存储和获取数据。
一个计算机具有的RAM越多,它的运行速度越快,但是此规律是有限制的。
内存与CPU一样,也构建在表面嵌有数百万晶体管的硅半导 体芯片上。但内存芯片更简单、更低速、更便宜。

内存存取数据的速度比硬盘的存取速度快10倍,而CPU的速度比内存不知还要快多少倍。当我们把程序从硬盘放到内存以后,CPU就直接在内存运行程序,这样比CPU直接在硬盘运行程序就要快很多。但内存是带电存储的(一旦断电数据就会消失),而且容量有限,所以要长时间储存程序或数 据就需要使用硬盘。内存在这里起了两个作用: 1. 保存从硬盘读取的数据,提供给CPU使用;2. 保存CPU的一些临时执行结果,以便CPU下次使用或保存到硬盘。

0.2.4 输入和输出设备

常见的输入设备:键盘(keyboard)和鼠标(mouse)
常见的输出设备:显示器(monitor)和打印机(printer)
显示器屏幕分辨率:是指显示设备水平和垂直方向上显示的像素(px)数。  分辨率可以手工设置。
分辨率越高,图像越锐化、越清晰。

像 素 密 度 = 长 度 像 素 数 2 + 宽 度 像 素 数 2 / 屏 幕 尺 寸 像素密度 = \sqrt{长度像素数^2 + 宽度像素数^2} / 屏幕尺寸 像素密度=长度像素数2+宽度像素数2 ​/屏幕尺寸

0.2.5 通信设备

计算机可以通过通信设备进行联网。
常见的设备有:

  • 拨号调制解调器:使用的是电话线,传输速度可达56000bps(bps:每秒比特)
  • DSL(数字用户线):使用的也是电话线,但传输速度叫上面的快20倍
  • 电缆调制解调器:利用有线电视电缆进行数据传输,通常速度比DSL快。
  • 网络接口卡(NIC):将计算机接入局域网(LAN)的设备。局域网通常用于大学、商业组织和政府组织。速度甚至可达1000Mbps
  • 无线网络:在家庭、商业和学校中极其常见。计算机可通过无线适配器连接到局域网或internet上。

0.3 计算机发展史上的鼻祖

图灵:计算机科学和人工智能之父,“用有限的指令和有限的存储空间可算尽一切可算之物”。
冯诺依曼:“计算机之父”和“博弈论之父”。冯诺依曼理论的要点 是:数字计算机的数制采用二进制;计算机应该按照程序顺序 执行。

0.4 操作系统

操作系统(Operating System)是运行在计算机上的最重要的 程序,它可以管理和控制计算机的活动。
硬件、操作系统、应用程序和用户之间的关系如图。
操作系统的主要任务:控制和监视系统的活动、分配和调配系统资源、调度操作。

0.5 万维网

万维网(World Wide Web,www,环球信息网)常简称为Web, 发明者蒂姆·伯纳斯·李。分为Web客户端和Web服务器程序。 WWW可以让Web客户端(常用浏览器)访问浏览Web服务器上的页面。 是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个有用的事物,称为一样“资源”;并且由一个全局“统一资源标识符”(URI)标识;这些资源通过超文本传输协议(Hypertext Transfer Protocol)传送给用户,而后者通过点击链接来获得资源。
Web架构有两种,一种是B/S架构,即browser- server;一种是C/S架构,即client-server。


万维网是无数个网络站点和网页的集合,它们在一起构成了因特网Internet最主要的部分(因特网也包括电子邮件、Usenet以及新闻组)。它实际上是多媒体的集合,是由超级链接连接而成的。我们通常通过网络浏览器上网观看的,就是万维网的内容。

0.6 职业发展与提升



0.7 学习经验探讨

第一层次:看得懂(依赖于视频、书、贴子)
第二层次:练的熟(每天代码必须实现2-3遍)
总结:三分看,七分练

学习编程的捷径:敲,狂敲
“模仿”好的编码习惯
整理、回顾:每天花30min整理

视频网址:https://www.bilibili.com/video/BV1Kb411W75N?p=1
课程资料:http://www.atguigu.com/download_detail.shtml?v=129

Java学习之编程入门相关推荐

  1. Java学习路线从入门到入土

    Java学习路线从入门到入土 Java学习路线从入门到入土 Java学习路线从入门到入土 简介 Java基础课程 第一阶段 第一部分:Java开发介绍 第二部分:Java数组 第三部分:Java面向对 ...

  2. 《Java 2D游戏编程入门》—— 1.5 创建一个主动渲染的窗口

    本节书摘来异步社区<Java 2D游戏编程入门>一书中的第1章,第1.5节,作者:[美]Timothy Wright(莱特),更多章节内容可以访问云栖社区"异步社区"公 ...

  3. Java学习指南从入门到入土

    Java学习指南从入门到入土 本身其实只是刚刚入门,只是经历了两年时间的风吹雨打,经历了各种bug的折磨和学习各种框架的辛酸,才有得现有的 刚刚入门.有句老话说的好叫做 从入门到放弃,人生不易要及时放 ...

  4. 【Android】手机安装Termux运行nodejs学习Javascript编程入门

    Termux 是运行在Android手机上的一个 Linux 终端模拟器,干什么都要输入命令执行,不像 Windows 操作系统桌面用鼠标点点点,这里主要介绍用它来学习Javascript编程入门,当 ...

  5. java学习之编程逻辑训练

    java学习之编程逻辑训练 案例1:买飞机票 分析 需要输入的变量:季节(旺季/淡季可以与后面的月份合并),舱位(经济舱/头等舱,字符串类型),机票原价(应该是浮点型),月份(整型) 定义方法录入机票 ...

  6. java学习_Java编程学习难不难 怎样才能快速入门Java

    Java编程学习难不难?怎样才能快速入门Java?对于想要加入IT行业的人来说,Java是一个不错的选择,不仅人才需求大,就业薪资也非常不错.许多人都非常看好Java发展前景,接下来千锋小编就给大家介 ...

  7. 用条件运算符编写java程序_Java 编程入门课程丨第 8 单元:条件运算符和控制语句...

    原标题:Java 编程入门课程丨第 8 单元:条件运算符和控制语句 教程概览 本单元是"Java 编程入门"课程的第 8 部分.尽管各单元中讨论的概念具有独立性,但实践组件是在您学 ...

  8. Java学习笔记系列-入门篇-计算机基础

    Java学习笔记 Java学习笔记是一个持续更新的系列,工作多年,抽个空对自身知识做一个梳理和总结归纳,温故而知新,同时也希望能帮助到更多正在学习Java 的同学们. 本系列目录: 入门篇 计算机基础 ...

  9. Java学习路线,java学习教程(入门到精通)

    你好,欢迎来到编程领域:阅读"Java入门",打包好了Java学习包,以及良好的阅读体验. 关于 Java 语言 由于 JVM 的支持,使得 Java 成为一种跨平台的编程语言,一 ...

最新文章

  1. 《Cell》新发现!“第二大脑”的反击
  2. java爬虫jsoup_Java爬虫之利用Jsoup自制简单的搜索引擎
  3. bootstrap table通过ajax获取后台数据展示在table
  4. VMware时钟不准的解决之道
  5. 取得GridPanel选定行所有字段值
  6. docker启动nginx代理不上_用 docker-compose 启动 nginx, network 为 host, nginx 无法启动是怎么回事?...
  7. Django学习笔记-MySQL
  8. cygwin--简单备忘
  9. 我们毕生的使命,就是要造就另一个人-《程序开发心理学》读后感
  10. SpringMv的IOC控制反转以及DI依赖注入(SpringMvc⑨)
  11. 二等水准测量记录数据_二等水准测量外业数据整理(往返测).doc
  12. 基于51单片机的四位共阴数码管秒表proteus仿真
  13. 【ESP 保姆级教程 预告】疯狂Node.js服务器篇 ——案例:ESP8266 + DS18B20温度传感器 +NodeJs本地服务+ MySQL数据库
  14. 饥荒食物 + 物品全制造代码
  15. 【图文教程】注册Oculus开发者账号
  16. win32创建窗口及其消息循环
  17. 多线程 环形缓冲区_使用环形缓冲区有效登录多线程应用程序
  18. 2021SC@SDUSC Linux内核—原生异步I/O(2)
  19. STM32上移植ds1307笔记
  20. 利用python函数,求正方形的面积

热门文章

  1. 逃避错误意味着失去成长的机会——与孩子谈学习中的弱项(音频)
  2. 500 - 内部服务器错误。 您查找的资源存在问题,因而无法显示。
  3. Xilinx zc706开发板使用
  4. ubuntu 编译 找不到 -ly
  5. 在 F1 Delta Time 大奖赛中找到对速度的热爱
  6. PTC Mathcad Prime7.0,简单易用的用户界面
  7. The Chubby lock service for loosely-coupled distributed systems 论文阅读笔记
  8. android 翻书动画效果怎么做,android ViewPager实现滑动翻页效果实例代码
  9. java-构建乘积数组(剑指offter-数组-简单)
  10. h是什么意思 富文本辑器_主流的开源「富文本编辑器」都有什么缺陷?