ImageVerifierCode 换一换
格式:PPT , 页数:22 ,大小:40.50KB ,
资源ID:350199      下载积分:100 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-350199.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(1.假设以下的叙述为一未提供捷径计算能力的程式段,试用程式设计的.ppt)为本站会员(ga****84)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

1.假设以下的叙述为一未提供捷径计算能力的程式段,试用程式设计的.ppt

1、1.假設以下的敘述為一未提供“捷徑計算”能力的程式段,試用程式設計的技巧,使此敘述經此改寫的動作後,具有與“捷徑計算”之處理方法相同之處理模式。if and then E1 else E2 endif,if then if then E1 else E2 endifelse E2endif,(1)寫出兩種布耳表式(boolean expression)之AND與OR兩運算子(operator)運算方式並比較兩方法之主要優缺點。(2)比較ADA,C,Pascal等三種程式語言對布耳表式運算方式所提供的機制。,(1)二種作法:a.捷徑計算(short circuit evaluation)的意義:

2、對運算式作求值動作時,無需做完整個運算式即可得出最後的結果,如此的計算方式便稱為捷徑計算。範例:(a)A and B當A為false時,A and B之結果即為false。(b)A or B當A為true時,A or B之結果即為true。b.完全計算(complete circuit evaluation)的意義:對運算式作求值動作時,必需做完整個運算式,可得出最後的結果,如此的計算方式便稱為完全計算。範例:(a)A and B當A為false時,仍然必須處理B之值,但結果依然為false。(b)A or B當A為true時,仍然必須處理B之值,但結果依然為true。c.捷徑計算與完全計算之

3、比較:捷徑計算效率較佳,但可能較容易使程式設計師犯下難以除錯之邏輯錯誤;而完全計算則是效率較差,但較不容易使程式設計師犯下難以除錯之邏輯錯誤。,(2)a.ADA利用不同的運算子代表不同之計算,如and與or代表完全計算而and then與or else則代表捷徑計算。b.C採用捷徑計算。c.Pascal採用完全計算。,試問在C語言中,最佳化編譯程式(optimization compiler)是否可以將二元布林運算子(boolean operator)前後的兩項子陳式(sub-expression)互相對調?其理由為何?,因為C語言採用捷徑計算,所以最佳化編譯程式不可以將二元布林運算子前後的兩

4、項子陳式互相對調,否則可能會使得執行結果不唯一。,試說明何以動態儲存區配置允許程式中使用遞迴呼叫(recursive call),而靜態儲存區配置則不允許?,因為若使用靜態儲存區配置則在編譯時就已將記憶體配置好,但是遞迴呼叫則是在執行時才知道會呼叫幾次,因為呼叫次數未定故無法事先配置記憶體空間,所以靜態儲存區配置不允許程式中使用遞迴呼叫,而動態儲存區配置則是執行時才分配記憶體空間,所以允許使用遞迴呼叫。,試指出下列各種語言中何者使用靜態儲存區配置?何者使用動態儲存區配置?SNOBOL,APL,LISP,Pascal的區域變數及全域變數,FORTRAN,COBOL。,(1)靜態儲存區配置:FOR

5、TRAN、Pascal的全域變數與COBOL。(2)動態儲存區配置:SNOBOL、APL、LISP及Pascal的區域變數。,(1)試定義何謂靜態資料型態繫結(static type binding),及動態資料型態繫結(dynamic type binding)。(2)試說明下列的語言,各主要採取何種型態繫結方式:Fortran,Pascal,Lisp,APL,Smalltalk。,(1)靜態資料型態繫結:在編譯時,指定變數的型態。例:Fortran,Pascal。(2)動態資料型態繫結:在執行時,指定變數的型態。例:Lisp,APL及Smalltalk。,在一個程式中,一個變數(varia

6、ble)是一個5-tuple,請逐一解釋這些tuples。,(1)name:代表名稱。(2)scope:代表變數可被引用的空間。詳細內容請參考第六章。(3)type:代表型態。(4)l-value:代表位址。(5)r-value:代表值。,1.把資料的屬性(attribute)繫於(binding)資料名稱之時機若是在執行程式時為之,此種方式稱為:(A)動態繫法(dynamic binding) (B)靜態繫法(static binding) (C)早期繫法(early binding) (D)隨機繫法(random binding)。,2.把資料的屬性(Attribute)繫於(bindin

7、g)資料名稱之時機若是在執行前為之,此種方式稱為:(A)動態繫法(dynamic binding) (B)靜態繫法(static binding) (C)早期繫法(early binding) (D)隨機繫法(random binding)。,3.程式語言中對變數(variables)之描述不包含 (A)名稱(name) (B)數值(value) (C)錯誤訊息(error message) (D)屬性(attribute)。,4.那一種程式語言的原始設計中,變數名稱與記憶體位置的連結一資料結合(data binding)在編譯器處理時(compile time)決定?(A)LISP (B)P

8、ROLOG (C)Pascal (D)APL。,5.以下語言在資料類型及儲存的處理上 何者與另三者不同?請選擇。(A)APL (B)BASIC (C)C (D)PL/1。6.以下語言中,有幾種語言之變數採用動態繫合型態(dynamic binding type) : Lisp、Scheme、C+、Java?(A)1 (B)2 (C)3 (D)4。,7.陣列(array)的設定採用堆積動態(heap dynamic)者的語言為何?(A)FORTRAN 77 (B)Pascal (C)Ada (D)FORTRAN 9O。8.在APL中可寫指令L1,2,3,4,5,6;其後又寫L38,就儲存繫合(s

9、torage binding)方式而言,應屬那一個變數?(A)靜態(static)變數 (B)堆疊動態(static dynamic)變數 (C)明示堆積動態變數(explicit-dynamic variable) (D)內隱堆積動態變數(implicit-dynamic variable)。,9.在以下語言中,指出有幾種語言其變數採用靜態型態繫合(static binding type):ADA,C,FORTRAN,APL (A)1 (B)2 (C)3 (D)4。 10.在處理式子(expression)時,多數語言均做強制型態檢查(type checking),而接受合理的混合式子,做強制轉換(coercion),以下語言何者不做強制轉換。(A)ADA (B)C (C)C+ (D)FORTRAN。,

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。