《C语言程序设计:问题与求解方法》——0.2节理想厨房系统的一个炒菜实例

本节书摘来自华章社区《C语言程序设计:问题与求解方法》一书中的第0章,第0.2节理想厨房系统的一个炒菜实例,作者:何 勤,更多章节内容可以访问云栖社区“华章社区”公众号查看

0.2 理想厨房系统的一个炒菜实例
在本节中,我们通过炒制一道青菜的例子,来说明理想厨房系统的工作全过程。
首先,把青菜放在冰箱地址为5的格子中,冰箱地址为6号的格子预留给炒好的菜使用。
菜谱的所有加工步骤(又称为指令)从冰箱地址0号格开始依次存放,炒青菜的菜谱及地址如下:
地址0的格子中: 取地址5(中的物品)到R0碟;
地址1的格子中: 将R0(倒入炒锅中)炒好后装到R1碟;
地址2的格子中: 送R1碟(中的物品)到地址6中;
可见,此菜谱一共有3个加工步骤。
开始时理想厨房系统状态如图0-2所示。


07277559463b3fdaefbf78d3c828d6435ca2988b

菜谱和原料安放完毕后,启动理想厨房系统,开始自动化的工作。
1)厨房管理员根据PC碟子中的数字“0”,知道要到地址为0的格子中取第一条指令(即加工步骤)。于是,厨房管理员向控制传送带上发出一个“取”信号,然后马上将PC碟中的数字“0”复制后放到地址传送带上。这两个信号都会到达冰箱。冰箱收到这两个信号后(知道理想厨房想要得到第0格中的物品,于是自动冰箱)将0号格的内容 “取地址5到R0碟”复制一份,将其放到材料传送带上,送往理想厨房。理想厨房收到后,将这条指令放到IR碟中。然后,厨房管理员将PC碟中的原来值增加1,以便为取下一条指令做好准备。取指令工作完成后,理想厨房系统处于如图0-3所示的状态。


a8b202867c7064cd69e1d0ab284417fd72a2af70

厨房管理员阅读并分析指令存放碟中的指令后,命令厨师将R0碟中的物品倒入锅中炒好后装到R1碟。第二条指令执行完后,理想厨房系统处于如图0-6所示的状态。


f293fad27fe4c0c7c54202380c32b0193826f02f

下面开始执行“送R1碟到地址6中”这条指令。厨房管理员分析指令存放碟中的加工步骤后,知道要将R1碟中的物品送到冰箱地址为6的格子中去存放。于是,管理员向控制传送带上发一个“存”信号,然后马上将6这个数放到地址传送带上;最后,将R1碟中的物品“熟青菜”放到材料传送带上,送往冰箱。
冰箱收到两个来自理想厨房的信号后,知道理想厨房要存放物品到6格中,于是自动冰箱(通过机械手)在材料传送带旁,等待从理想厨房R1碟传来物品—“熟青菜”,一旦到达,自动冰箱就将其取下,并将其存放到地址为6的格子中。完成后系统状态如图0-8所示。
到此为止,炒青菜这道菜终于大功告成了。


4923c666e777ba8ac05cfea67dfd9f637d24954a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值