计算机体系结构 和 计算机组成的区别

计算机体系结构 和 计算机组成的区别

P7

1. 计算机体系结构

计算机体系结构 是那些能够被 程序员所见到的 计算机系统的属性, 即 概念性的结构与功能特性.

计算机系统的属性通常是指用机器语言编程的 程序员(也包括 汇编语言程序设计者 和 汇编程序设计者)所看到的 传统机器的属性,

包括 指令集, 数据类型, 存储器寻址技术, I/O机理等, 大都属于抽象的属性.

由于计算机系统具有多级层次结构, 因此, 站在不同层次上 编程的程序员 所看到的 计算机属性 也是各不相同的.

例如, 用 高级语言 编程的程序员可以把 IBM PC 与 RS6000 两种机器看成是 同一属性的机器.

可是, 对使用 汇编语言 编程的程序员来说, IBM PC 与 RS6000 是 两种不同的机器.

因为 程序员所看到的 这两种机器的 属性, 如 指令集, 数据类型, 寻址技术等, 都完全不同,

因此, 认为这两种机器的结构是 各不相同的.

2. 计算机组成

计算机组成 是指 如何实现计算机体系结构所体现的属性, 它包含了许多对程序员来说是透明的硬件细节.

例如, 指令系统体现了 机器的属性, 这是属于 计算机结构的问题.

但指令的实现, 即如何取指令, 分析指令, 取操作数, 运算, 送结果等, 这些都属于计算机组成的问题.

因此, 当两台机器指令系统相同是, 只能认为它们具有相同的结构.

至于这两台机器如何实现其指令的功能, 完全可以不同, 则它们的组成方式是不同的.

例如, 一台机器是否具备乘法指令的功能, 这是一个结构问题, 可是, 实现乘法指令采用什么方式, 则是一个组成问题.

实现乘法指令可以采用一个专门的乘法电路, 也可以采用 连续相加 的 加法电路来实现, 这两者的区别就是计算机组成的区别.

究竟应该采用哪种方式来组成计算机, 要考虑到各种因素, 如 乘法指令使用的 频度, 两种方法的运行速度, 两种电路的 体积, 价格, 可靠性等.

3. 总结

不论是过去还是现在, 区分 计算机结构 和 计算机组成 这两个概念都是十分重要的.

例如, 许多计算机制造商向用户提供一系列体系结构相同的计算机, 而它们的组成却又相当大的差别,

即使是同一系列不同型号的机器, 其价格和性能也是有 极大差异的.

因此, 只知其结构, 不知其组成, 就选不好性能价格比最合适的机器.

此外, 一种机器的体系结构可能维持许多年, 但机器的组成却会随着计算机技术的发展而不断变化,

例如, 1970年首次推出的额 IBM System/370结构, 它包含了很多机型.

一般需求的用户可以买价格便宜的低速机型; 对需求高的用户, 可以买一台升级的价格稍贵的机型, 而不必抛弃原来已开发的软件.

许多年来, 不断推出性能更高, 价格更低的机型, 新机型总归保留着原来机器的结构, 使用户的软件投资不致浪费.

本书 主要研究 计算机的组成, 有关 计算机体系结构 的内容 将在 "计算机体系结构" 课程中讲述

参考文献

[1] 唐朔飞. 计算机组成原理[M]. 3版. 北京: 高等教育出版社,2020.

posted on 2021-10-13 15:58  beyondx  阅读(1649)  评论(0编辑  收藏  举报

导航