`
mywebcode
  • 浏览: 999767 次
文章分类
社区版块
存档分类
最新评论

什么是冯诺依曼结构计算机?

 
阅读更多

什么是冯诺依曼结构计算机?

诺依曼计算机von Neumann machine使用冯诺依曼体系机构的电子数字计算机。19456月,冯诺依曼提出了在数字计算机内部的存储器中存放程序的概念(Stored Program Concept),这是所有现代电子计算机的范式,被称为诺依曼结构,按这一结构建造的电脑称为存储程序计算机(Stored Program Computer),又称为通用计算机。冯诺依曼计算机主要由运算器、控制器、存储器和输入输出设备组成,它的的特点是:程序以二进制代码的形式存放在存储器中;所有的指令都是由操作码和地址码组成;指令在其存储过程中按照执行的顺序;以运算器和控制器作为计算机结构的中心等。冯诺依曼计算机广泛应用于数据的处理和控制方面,但是存在一些局限性。

根据冯诺依曼体系结构构成的计算机,必须具有如下功能:

  1.把需要的程序和数据送至计算机中。

  2.必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。

  3.能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。

  4.能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作。

  5.能够按照要求将处理结果输出给用户。

什么是面向过程的设计风格?

面向过程是一种以过程为中心的编程思想。

就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

以我个人理解是认为是对一种不复杂的事件地分步地计划出应做的事情,从而一步步地完成。

是相对于面向对象的思维方式

C语言和C++语言的关系?

因为C++是一门独立的编程语言,它在语法、构建环境和运行环境上都无需依赖任何其它语言。至于说它是“C语言的超集,那只是一种模糊的提法而已,更准确的说法应是:C++语言从设计之初就充分考虑了对C语言的兼容,结果它在很大程度上兼容了C语言。

C++语言支持多种编程范式:面向过程、面向对象和范型程序设计。它所兼容C的部分,正是支持面向过程的主要部分。有C语言的基础,虽然有助于更快地掌握C++的面向过程部分,但由于C++语言本身也直接支持面向过程,因此我们完全可以从C++中直接学习面向过程程序设计,而无需先学C。至少理论上如此。

第一C语言是有用的,这不用多说,那么多C语言构筑起来的项目和复杂系统摆在那里。虽然没有对包括面向对象在内的各种更抽象的编程范式提供直接支持,但事实证明它能解决复杂问题;第二,C++语言的设计者所设计的是一门新式的语言,而不仅仅是一个更好用的C”

有人说过,“C语言是结构化的汇编,没错,它的功能、效率和可移植性都很好地达到了它的设计初衷,它对现实项目中的各种问题也都有它独特的解决方式,而同样的解决方式在C++语言中却未必是恰当的(反之也成立)。换句话说,从解决实际问题的方式来看,这两种语言谁也包含不了谁。我们学习语言最终不都是为了解决实际问题吗?那结论已经出来了:C++语言从语法上几乎完全包含了C不代表它真正包含了C

C语言面向过程的专项训练非常有助于迅速掌握C++语言的面向过程部分;而且,大多数人最终都在实际的软件开发中运用编程语言,这使得任何语言的编程背景对其它新语言的学习都会有帮助,比如说学习BASIC也可以认为对学习C++有帮助。但不同的语言毕竟是不同的语言,C语言和C++语言终归体现了不同的编程思想,如果在学习C++语言的过程中,不能适时的忘记并跳出C,有时可能阻碍对C++编程思想的理解和掌握。

总结一下:

1)学习C++语言不需要以任何其它语言作为基础,包括C;但是,
2)不要指望学会了C++语言,就等于同时掌握C++C
3)也不要指望学过一遍C++语言,面向过程的编程水平就一下子可以跟上专门学习过C语言的程序员;
4)学好了C,对学习C++有很大的帮助,但要更好的学习C++语言并掌握其编程思想,有时需适时地忘记并跳出C

再浓缩一下,其实只想说一句话:CC++是两门不同的编程语言,只是它们有较大的联系。


分享到:
评论

相关推荐

    冯诺依曼型计算机的缺点及改进方法.pdf

    冯诺依曼型计算机的缺点及改进方法.pdf

    一种新的非冯诺依曼体系结构

    一种新的非冯诺依曼计算机体系结构,供学习计算机体系结构

    冯•诺依曼结构

    说到计算机的发展,就不能不提到美国科学家冯•诺依曼。从20世纪初,物理学和电子学科学家们就在争论制造可以进行数值计算的机器应该采用什么样的结构。人们被十进制这个人类习惯的计数方法所困扰。所以,那时以研制...

    简述冯诺依曼体系结构计算机的要点和工作过程.pdf

    简述冯诺依曼体系结构计算机的要点和工作过程.pdf

    冯诺依曼结构和哈佛结构.pdf

    冯诺依曼结构和哈佛结构.pdf

    冯诺依曼型计算机与哈佛结构计算机的区别

    20世纪30年代中期,德国科学家冯诺依曼大胆的提出,抛弃十进制,采用二进制作为数字计算机的数制基础。同时,他还说预先编制计算程序,然后由计算机来按照人们事前制定的计算顺序来执行数值计算工作。

    使用Verilog设计一个冯诺依曼结构的CPU

    使用Verilog设计一个冯诺依曼结构的CPU,实现以下4条指令: (1)addi: (rd) (rs) + imm (2)lw: (rd) ((rs) + imm) (3)sw: memory((rd) + imm) (rs) (4)add: (rd) (rd) +(rs) CPU包含以下模块: (1)...

    冯•诺依曼结构与哈佛结构

    本文对冯•诺依曼结构与哈佛结构进行了详细的介绍,对比了二者的区别,适合那些对此二者概念分不太清楚的同学

    [详细完整版]计算机判断题.doc

    判断题 1、从体系结构上看,至今所有计算机都是冯·诺依曼型计算机。F 2、控制器通常又称中央处理器,简称"CPU"。 T 3、十进制数的11,在十六进制中仍可写成11。F 4、要输入汉字时,键盘可以处于大写或小写状态。F ...

    大学计算机组成原理考试答案

    冯诺依曼结构计算机是一种典型的计算机组织结构,将计算机硬件分为运算器,存储器,控制器,输入部件和输出部件,采用存储程序的工作方式。冯诺依曼结构计算机的主要外部特征是: (1)指令和数据都以字的方式存放在...

    计算机组成-冯·诺依曼体系结构.pdf

    计算机组成-冯·诺依曼体系结构.pdf

    目前的计算机都是按冯·诺依曼的--------原理设计的。(1).doc

    1. 目前的计算机都是按冯·诺依曼的________原理设计的。 A. 开关电路 B. 存储程序 C. 二进制 D. 逻辑运算 2. ________是计算机应用中最诱人也是难度最原理设计的。 A. 科学计算 B. 数据处理 C. 自动控制 D. 人工...

    广东开放大学计算机应用基础+作业1.docx

    从ENIAC(ENIVAC并不是冯诺依曼体系)到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。 根据冯诺依曼体系结构构成的计算机,必须具有如下功能: ? 把需要的程序和数据送...

    计算机基础原理与冯.诺依曼结构思想

    内容概括:本文详细介绍了字节与进制的关系等一...学到的知识什么:可以帮助初期学者奠定扎实的基础理论,更好的了解计算机。 阅读建议:了解本篇的知识后一定要多去叙述,加强对知识的印象,不要让知识封存在脑子里!

    微机课后习题

    1. 什么是冯·诺依曼机? 答: 冯·诺依曼于1945年提出了存储程序的概念和二进制原理,利用这种概念和原理设计的电子计算机系统统称为冯·诺依曼机。 它包括运算器、控制器、存储器、输入设备和输出设备五个组成部分...

    广东开放大学计算机应用基础+作业1.doc

    根据冯诺依曼体系结构构成的计算机,必须具有如下功能: 把需要的程序和数据送至计算机中。 必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。 能够完成各种算术、逻辑运算和数据传送等数据加工处理的...

    一种新的非冯·诺依曼计算机体系结构TriBA (2006年)

    针对复杂问题的分解方式,提出一种基三计算机体系结构,该体系结构易于扩展,具有分形特征。设计了一种面向对象多核CPU,支持对象并行运行,在一定程度上实现了软件结构与计算机系统结构的统一。片上多核间采用基三...

    广东开放大学计算机应用基础+作业1doc资料.docx

    从ENIAC(ENIVAC并不是冯诺依曼体系)到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。 根据冯诺依曼体系结构构成的计算机,必须具有如下功能: 把需要的程序和数据送至...

    计算机组成原理本科生模拟试卷01

    A 并行 B 冯•诺依曼 C 智能 D 串行 2 某机字长32位,其中1位表示符号位。若用定点整数表示,则最小负整数为( )。 A -(231-1) B -(230-1) C -(231+1) D -(230+1) 3 以下有关运算器的描述,( )是正确的。 A ...

    计算机系统结构第三章(习题解答).pdf

    11.存储程序计算机(冯·诺依曼结构)——采用存储程序原理,将程序和数据存放在同 一存储器中。指令在存储器中按其执行顺序存储,由指令计数器指明每条指令所在的单元地址。 12.并行性——在同一时刻或同一时间...

Global site tag (gtag.js) - Google Analytics