`
java2000.net
  • 浏览: 654023 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

Java编程那些事儿6——计算机软件基本概念

阅读更多
 
Java编程那些事儿6——计算机软件基本概念
作者:陈跃峰
 
   第一章 计算机基础
         本部分主要介绍计算机相关的知识,重点介绍和软件编程相关的基础知识。
         其实对于编程来说,计算机的基础是越多越深就越好,但是受时间和精力的限制,每个人了解的其实还是很有限,下面就主要编程中常用的基础知识,遗漏的地方请大家积极指正和补充。
         计算机本质的结构就是将所有的内容数据化,其实软件编程也采用的是同样的逻辑,把各种需要保存的状态数字化。
1.1     计算机软件基本概念
软件的概念
大家都知道,计算机分为硬件和软件,其实看得见摸得着的算硬件,比如硬盘、主板什么的,摸不着的就算软件了。
按照专业点的说法,软件就是一组指令序列,那么如何理解他呢?举个基本的例子,比如大家到学校报名,学校会给你一个单子,一般上面会写,首先到哪里缴费、然后领证件,体检什么的,反正至少也有那么10多条,如果把每条操作都看成指令的话,这个就是软件的本质。
或者按照冯·诺伊曼的计算机体系,计算机就是接受输入,进行处理,反馈结果,其实软件也是这样,提供界面接受用户的输入,根据逻辑进行处理,把结果反馈给用户,无论是普通的软件还是游戏都是这样。
计算机为什么是二进制的?
众所周知,现在的计算机都是以二进制存储和运算数据的,那么为什么是二进制而不是常见的十进制呢?
原因很简单,因为现在的计算机是电子计算机,内部只有两个状态,所以就依据这两个状态创建了一种新的进制形式——二进制。这样极大的简化了电子计算机的结构,可以用电流的有无、光线的有无以及磁性的有无等状态来实现数学上的二进制。数学上用0和1来分别代表这两个状态罢了。
当然,随着科学的发展,以后计算机不再是电子计算机了,那么二进制也可能就消失了。
计算机存储单位
既然计算机是电子计算机了,那么存储的最小单位就是一个二进制位,英语是bit,简写成b。一位只有2个值,0或者1。
由于位的单位太小,所以就设计了另外一个概念——字节,英语是byte,简写成B。规定1个字节是8位,即1B=8b。比如大家接触的8位机、16位机等等,就是指CPU一次处理的最小的数据单位。
再大点的单位就依次是KB、MB、GB和TB了,他们之间的进制都是2的10次方,也就是1024,也就是1KB=1024B,1MB=1024KB。
这里简单的说一个实际问题,大家买硬盘的时候,比如160GB,这里厂商使用的进制是1000,而不是1024,所以160个GB格式化以后就大概只有:
         (160 X 1000 X1000 X1000) / 1024/1024/1024 = 149GB
 
分享到:
评论

相关推荐

    Java编程那些事儿

    本文将围绕《Java编程那些事儿》这本书的部分内容,深入浅出地探讨程序设计的基本概念、Java语言的基础语法及其应用,以及学习程序设计所需的基础条件。 ### 程序设计是什么? **程序设计**,又称编程,是指定义...

    java初级入门

    **1.1 Java编程那些事儿1——序言** 本章节主要介绍了作者撰写这本书的目的和背景,旨在帮助编程初学者更好地理解和掌握Java编程的基础知识。书中强调了通过通俗易懂的语言来解释复杂的概念,并计划覆盖以下核心...

    21天学通java

    3. **《JAVA编程那些事儿》电子书**: - 通过讲述真实的编程故事来传授经验和教训,有助于开发者避免常见错误并提高工作效率。 ### 总结 以上资源覆盖了Java编程的各个方面,从基础知识到高级主题,从理论到实践...

    java 程序员上班那点事儿

    【标签】:“java 程序员”标签明确指出了内容的核心——与Java编程语言和Java程序员的工作相关。Java是一种广泛使用的面向对象的编程语言,用于开发跨平台的应用程序,尤其在企业级应用中占有重要地位。 【压缩...

    Java程序员上班那点事儿

    ### Java程序员上班那点事儿——理解与解析 #### 前言 《Java程序员上班那点事儿》一书深入探讨了Java程序员职业生涯中的各种实际问题,包括但不限于职业规划、技能匹配、行业现状等方面。本文将从书中提到的核心...

    租房系统静态页面供java初学者用来学习

    对于Java初学者来说,这是一个理想的实践项目,可以帮助他们更好地理解和应用Web开发的基本概念。静态页面意味着它们是由HTML、CSS和JavaScript等前端技术构建的,不涉及服务器端的交互,如Java JSP(JavaServer ...

    程序员那点儿事儿

    成为一名合格的程序员,需要掌握一系列基础知识和概念,包括计算机硬件原理、编程语言、软件工程、数据结构与算法、操作系统原理、网络与多媒体技术等。这些知识构成了软件开发的基础,是解决实际问题、设计高效系统...

    TRISHA:机器人教育那些事儿! Penn Apps 2014 年秋季

    机器人教育那些事儿! Penn Apps 2014 年秋季 作者:迪恩·威廉米、索耶·布鲁克斯、卡罗琳·沙利文、克里斯蒂娜·索里斯 TRISHA(Android 上的学校和家庭智能教学机器人)是一款旨在帮助学生学习编程和机器人技术的...

    庄晓丹:基于Clojure构建的移动云平台——我的Clojure实践思考

    Clojure是一种现代的Lisp方言,运行在Java虚拟机(JVM)之上,也被编译为JavaScript用于浏览器端。由于其函数式编程的特点和并发处理能力,Clojure在构建可靠的、易于扩展的分布式系统方面具有优势。 - AVOSCloud...

    flink-1.12.0-bin-scala_2.11.tgz

    6. **SQL接口**:Flink SQL允许开发者用SQL语言编写流处理和批处理作业,简化了编程模型,使得非Java背景的开发者也能轻松上手。 7. **Scala支持**:"scala_2.11"表明这个版本的Flink是针对Scala 2.11版本编译的。...

Global site tag (gtag.js) - Google Analytics