精品资料网 >> 管理信息化 >> 信息技术 >> 资料信息

计算机基础知识讲义(doc 19页)

所属分类:信息技术

文件大小:294 KB

下载要求:10 学币或VIP

点击下载
资料简介:

计算机基础知识讲义内容提要:
忽视了硬件体系的长期稳定。这种稳定性使得很多习惯经验变成了不言自明的信条。 大多数的软件设计方法的革新只不过是用旧石斧打造出来新石斧。在C中我们使用getc,putc来进行IO,在Java中无非是变成了 System.in.read(),System.out.print ()。为什么IO必定是这种形式呢?这是因为我们长期使用着同一种计算机。我们知道PC/Mac这样的计算机中CPU与IO设备进行通信,需要通过各种总 线。
以 C语言为代表的传统的IO,实际上是单CPU上单任务工作模式的投影。在单台计算机上, 传统计算机体系结构决定了CPU处于控制者和决策者的地位。换而言之,我们历来习惯于以CPU的视角来考虑程序的IO逻辑.程序员是将自己假设为CPU. 程序员关心的IO设施只是一个黑盒.我们只需要往IO发送一个请求,然后等待请求回来进行运算,完全不关心这一来一回之间到底发生了什么过程.
但是当我们打开黑盒,观察CPU与IO的通信过程的时候, IO Monad就从幕后走向了台前。以总线的角度看,CPU和外设是等同的,都只是一个具有运算能力和输入输出端口的黑盒.总线正如 Bind/>>=函数一样不关心这些黑盒子里如何运算的,它只关心从这个黑盒拿数据出来放入那个黑盒. 从整个计算机的体系结构看,传统的IO观念只不过是IO Monad的一个局部化形态。
IO Monad实则上在一些接近操作系统底层的软件中,经常扮演者数据总线这种核心角色。比如说Unix/linux shell的管道命令就是彻头彻尾的IO Monad. cat,命令是return/Unit函数,|管道符就是bind/>>=函数。例如:cat sample.txt|grep "High"|wc –l .cat 将sample.txt的文件内容包装成stdout,|管道符将stdout的内容传给grep 命令查询所有单词位High的行,查询的结果又被转化为stdout,再通过|管道符传送给wc命令进行行数统计。微软最新的Shell取名为 Monad,其言下之意恐怕无需赘述了.
不仅如此,IO Monad在结构化程序语言的最初演化的阶段也残留了一些踪迹.很多古老的Pascal程序,都保留了在程序首部书写Input Outpu参数的习惯.
…………
..............................

上一篇:如何利用D-VAR系统解决电能质量问题(pdf 

下一篇:GNSS空间信号质量分析方法探讨(pdf 6页)

国家发改委创业风险投资项目网上申报系统(doc 35页)

全国建筑市场监督管理信息系统建设及实施(ppt 32页)

下载JAVA组件执行步骤讲义(doc 8页)

Kinco智能伺服控制技术综合概述(ppt 57页)

国家高技术产业化发展专项建议书(doc 34页)

学位论文之博客世界交流模式的社会网络分析(pdf 44页)

精品资料网 m.cnshu.cn

Copyright © 2004- 粤ICP备10098620号-1