跳轉到內容

A-level 計算機科學/AQA/試卷 1/骨架程式/AS2023

來自華夏公益教科書,開放書籍,開放世界

AQA 計算機科學彙編程式模擬器

這是針對 AQA AS 計算機科學規範的。

這裡是提出關於一些問題可能是什麼以及如何解決它們的建議的地方。

請尊重他人,不要破壞或篡改頁面,因為這會影響學生備考。

A 部分預測

[編輯 | 編輯原始碼]

2023 年試卷 1 A 部分將包含 5 道題,總計 25 分。(Q1 - 6 分,Q2 - 5 分,Q3 - 2 分,Q4 - 2 分,Q5 - 10 分)。注意,Q5 包含 2 部分,這意味著它很可能是一道要求你根據給定的虛擬碼用你選擇的程式語言編寫程式,以及要求你在第二部分插入螢幕截圖的問題。

什麼是演算法?2 分

有限狀態機

克羅斯先生(懷特島渡輪系統問題)

跟蹤表

B 部分預測

[編輯 | 編輯原始碼]

2023 年試卷 1 B 部分將包含 6 道題,總計 20 分。(Q6 - 4 分,Q7 - 2 分,Q8 - 1 分,Q9 - 5 分,Q10 - 2 分,Q11 - 6 分)。

- 宣告程式中返回單個整數值的使用者定義子例程的識別符號

- 宣告程式中返回單個字元值的 使用者定義子例程的識別符號

1. 宣告一個識別符號的名稱

     a variable that is used to store a single character.
     a user -defined subroutine that has one parameter.
     a user-defined subroutine that returns an integer
     a user-defined procedure

2. 使用一個常量來儲存最大記憶體。說明使用命名常量表示常量值的一個優勢。

3. 解釋異常處理的含義以及如何在 EditSourceCode 子例程中使用異常處理。

4. 在骨架程式的生成中使用了結構化程式設計方法。解釋結構化程式設計方法的含義。

5. 在 Assemble 子例程中有一個名為 NumberOfLines 的變數。在 DisplayCode 子例程中也有一個不同的名為 NumberOfLines 的變數。解釋為什麼這兩個不同的變數可以具有相同的識別符號。

6. 幾個子例程使用了一個變數 NumberOfLines。它可以宣告為全域性變數而不是在每個子例程中區域性宣告。為什麼使用區域性變數是好的做法?

7. 宣告一個識別符號的名稱

    An array.
    A dictionary
    a local variable used to store a string value.

8. 解釋資料如何在不同的子例程之間共享。

9. 解釋如果資料檔案中提供的行數大於 SourceCode 陣列中的索引位置數,會發生什麼情況。

10. SourceCode 是一個數組,但可以使用列表。描述陣列和列表之間的兩個區別,並說明使用陣列相對於使用列表的一個優勢?

11. 本題涉及 UpdateSymbolTablel 子例程。舉一個示例說明為什麼顯示錯誤程式碼 3,並解釋程式碼如何檢測文字檔案引起的錯誤。

12. 宣告一個 的識別符號

       user-defined subroutine that uses nested indefinite iteration.
       data structure that stores values of more than one data type.
       data structure that stores values of only one data type.

13. 層次圖的用途是什麼?

14. 層次圖中的每個框代表什麼?

15. 宣告用於表示整數的最合適的 資料型別。

16. 骨架程式使用了資料結構 SourceCode。說明此資料結構的第一個元素 SourceCode[0] 的用途。

17. 解釋分解的含義。

18. 解釋定迭代和不定迭代之間的區別。

19. 宣告骨架程式中包含定迭代的子例程的識別符號。

20. 宣告骨架程式中包含不定迭代的子例程的識別符號。

21. 什麼是子例程?

22. 使用子例程可以促進程式碼重用。在參考骨架程式中的子例程的情況下,描述一個子例程如何被重用的示例。

23. 描述重用子例程的一個優勢。

24. 為什麼使用 for 迴圈,原始碼索引為 0,而不是使用 while 迴圈?

25. BinaryString 儲存為字串,但只包含整數,這是為什麼?

26. 解釋 11 個錯誤程式碼。

27. 使用了一個棧,解釋棧與佇列的不同之處。

28. 類 AssemblerInstruction 有三個屬性,它們都是公共的,你如何判斷?這又意味著什麼?

29. 術語例項化的含義是什麼?

30. 在物件中,operandstring 和 operandvalue 什麼時候會是一樣的?

31. operandvalue 為每個物件儲存什麼?

32. 它什麼時候會以 Jump1 開始?

33. 目前,ACC 中的負數溢位不會產生執行時錯誤,這是為什麼?

C 部分預測

[編輯 | 編輯原始碼]

骨架程式的程式設計問題

2023 年試卷 1 C 部分包含 4 道題,總計 30 分。(Q12 - 5 分,Q13 - 6 分,Q14 - 5 分,Q15 - 14 分。這些分數包括螢幕截圖,所以程式碼的可能分數將低 1-2 分)。

1. 在 EditSourceCode 子例程中新增驗證。

     This could be to make sure the line number is in range
     To make sure the line is of minimum length
     To format the label, opcode, operand and comment.

2. 新增新的操作碼

 BNE                             SHR
 BGT                             SHL
 BLT                             LSR
 AND                             LSL
 OR                              EOR
 NOT

3. 能夠將編輯後的文字檔案儲存到新的文字檔案中。

       Prog2 has gaps between lines 6 and 9. They could ask you to add some assembly code then save the file.
       Saving the file could be to overwrite or into a new file which the user provides the name for.

4. 編輯行,雙重檢查條目是否為整數,以及它是否在該程式的行數範圍內。

5. 在 EditSourceCode 子例程中新增插入和刪除選項

華夏公益教科書