CSI106Chưa đoKỳ 1Cơ sở ngành Cập nhật 2 ngày trước
Introduction to Computer Science - CSI106
359Câu hỏi
8Bộ đề
13Chủ đề
Câu hỏi của môn
84/359 câuCòn 275
AAn interface between hardware and users
BA specific application program
CA document outlining system policies
DA type of computer hardware
ENone of the others
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "An interface between hardware and users". Hệ điều hành là phần mềm nằm giữa phần cứng và người dùng: nó quản lý CPU, bộ nhớ, tệp và thiết bị, đồng thời cung cấp giao diện cùng các lời gọi hệ thống để người dùng và chương trình khai thác phần cứng mà không phải điều khiển trực tiếp. Mục "A specific application program" hiểu sai vai trò, hệ điều hành không phải một ứng dụng cụ thể mà là nền để mọi ứng dụng chạy trên đó. Mục "A document outlining system policies" biến phần mềm thành tài liệu, trong khi hệ điều hành là mã thực thi được. Mục "A type of computer hardware" xếp nó vào phần cứng, trái với bản chất phần mềm. Mục "None of the others" không dùng được vì đã có một mô tả đúng trong danh sách.
ATo store data permanently
BTo supply power to the computer
CTo connect all the parts of the computer together
DTo cool down the components
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "To connect all the parts of the computer together". Bo mạch chủ là tấm mạch mang socket CPU, khe cắm RAM, các khe mở rộng và hệ thống bus cùng đầu nối, nhờ đó mọi thành phần trao đổi được dữ liệu và tín hiệu điều khiển với nhau. Mục "To store data permanently" là việc của bộ nhớ phụ như ổ cứng hay SSD, bo mạch chủ không giữ dữ liệu người dùng. Mục "To supply power to the computer" thuộc bộ nguồn, bo mạch chủ chỉ phân phối lại điện đã được bộ nguồn chuyển đổi. Mục "To cool down the components" là nhiệm vụ của quạt, tản nhiệt và vỏ máy. Những chi tiết đó có thể gắn trên bo mạch chủ, nhưng chức năng chính của bo mạch vẫn là liên kết các bộ phận thành một hệ thống hoạt động được.
A
ConfidentialityB
IntegrityC
AvailabilityD
AuthenticationLời giải
Mở trang câu hỏi này →Đáp án đúng: "Confidentiality". Tính bí mật đúng nghĩa là thông tin chỉ người có quyền mới đọc được, nên nó là nguyên tắc chống tiết lộ, thực thi bằng mã hoá và kiểm soát truy cập. Mục "Integrity" lo chuyện khác: bảo đảm dữ liệu không bị sửa đổi hay xoá trái phép, một tệp có thể bị người ngoài đọc mất mà vẫn còn nguyên vẹn. Mục "Availability" bảo đảm hệ thống và dữ liệu dùng được khi cần, nó bị phá khi có tấn công từ chối dịch vụ, chẳng dính đến việc giữ kín nội dung. Mục "Authentication" là cơ chế xác minh danh tính của người hay tiến trình, nó hỗ trợ việc giữ bí mật nhưng bản thân không phải mục tiêu không tiết lộ thông tin.
A300
B100
C200
D400
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "300". Bộ nhớ ảo là toàn bộ không gian mà hệ thống cho phép các chương trình chiếm, gồm phần đang nằm trong bộ nhớ chính cộng phần đang để trên đĩa: 100 MB cộng 200 MB bằng 300 MB, đúng bằng tổng mười chương trình nhân 30 MB. Mục "100" chỉ là dung lượng bộ nhớ vật lý thật có, nó là giới hạn phần cứng chứ không phải không gian mà chương trình thấy. Mục "200" chỉ lấy phần đang gửi trên đĩa, bỏ mất phần đang chạy trong bộ nhớ. Mục "400" cộng thêm 100 MB không tồn tại, nghĩa là tính hai lần phần bộ nhớ chính. Chính kỹ thuật phân trang và phân đoạn theo yêu cầu cho phép mỗi lúc chỉ nạp phần đang cần, nhờ vậy 300 MB chương trình chạy được trên 100 MB bộ nhớ thật.
AThe completed code for the software.
BA specification document outlining what the software will do, not how
CA detailed architecture diagram of the system
DA plan for software testing and deployment
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "A specification document outlining what the software will do, not how". Pha phân tích trả lời câu hỏi hệ thống phải làm gì, kết quả là tài liệu đặc tả mô tả chức năng, dữ liệu vào ra và yêu cầu của người dùng, cố ý chưa chạm tới cách hiện thực. Mục "The completed code for the software." là sản phẩm của pha cài đặt, nằm sau hai pha nữa. Mục "A detailed architecture diagram of the system" trả lời câu hỏi làm thế nào, đó là đầu ra của pha thiết kế, nơi mới chia mô-đun và chọn cấu trúc. Mục "A plan for software testing and deployment" thuộc công việc kiểm thử và triển khai về sau; nếu để pha phân tích lo chuyện đó thì đặc tả chưa xong đã phải chốt cách làm, trái với trình tự của vòng đời phần mềm.
70What does a hash function primarily ensure?4 lựa chọn
A
IntegrityB
ConfidentialityC
AvailabilityD
AuthenticationLời giải
Mở trang câu hỏi này →Đáp án đúng: "Integrity". Hàm băm biến một khối dữ liệu dài thành giá trị rút gọn có độ dài cố định, và chỉ cần đổi một bit trong dữ liệu thì giá trị băm đã khác hẳn, nên người nhận so lại hai giá trị băm là phát hiện được dữ liệu có bị sửa trên đường truyền hay khi lưu. Mục "Confidentiality" không đạt được, vì dữ liệu gốc vẫn đi kèm ở dạng rõ, muốn giữ kín nội dung phải mã hoá. Mục "Availability" nói về việc dịch vụ luôn dùng được, hàm băm không ngăn được gián đoạn hay quá tải. Mục "Authentication" cần thêm khoá bí mật như trong mã xác thực bản tin hoặc chữ ký số; giá trị băm trần không gắn với danh tính nào nên không chứng minh được ai là người gửi.
AArithmetic logic unit (ALU)
BInput/Output (I/O)
CControl unit (CU)
DPower supply unit (PSU)
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Power supply unit (PSU)". Mô hình von Neumann chia máy tính thành bốn hệ con: bộ nhớ, đơn vị số học và logic, đơn vị điều khiển, cùng khối vào ra. Bộ nguồn chỉ chuyển đổi và cấp điện, nó không lưu, không xử lý, không chuyển dữ liệu, nên không nằm trong mô hình xử lý này. Mục "Arithmetic logic unit (ALU)" là nơi thực hiện các phép tính số học và phép logic trên dữ liệu. Mục "Input/Output (I/O)" là hệ con nhận dữ liệu từ ngoài, xuất kết quả và nối với bộ nhớ phụ. Mục "Control unit (CU)" là hệ con giải mã lệnh rồi phát tín hiệu điều khiển cho ba hệ con còn lại phối hợp với nhau. Cả ba đều thuộc mô hình nên không thể là lựa chọn bị loại.
ATo perform arithmetic and logical operations.
BTo store data and program instructions.
CCoordinate memory, ALU, and I/O operations.
DTo connect the CPU to external networks.
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Coordinate memory, ALU, and I/O operations." Đơn vị điều khiển lấy lệnh từ bộ nhớ, giải mã rồi phát tín hiệu điều khiển theo chu kỳ lấy lệnh, giải mã, thực hiện, nhờ đó bộ nhớ, khối tính toán và các thiết bị vào ra hoạt động đúng thứ tự và đúng lúc; nó chỉ huy chứ không tự tính. Mục "To perform arithmetic and logical operations." là việc của đơn vị số học và logic. Mục "To store data and program instructions." thuộc bộ nhớ chính và các thanh ghi, nơi giữ lệnh cùng dữ liệu đang dùng. Mục "To connect the CPU to external networks." là chuyện của card mạng và khối vào ra, nằm ngoài bộ xử lý. Thiếu đơn vị điều khiển thì các bộ phận này vẫn đủ nhưng không ai điều phối nên lệnh không chạy được.
73Which of these is not a loop?4 lựa chọn
AFor
BWhile
CSwitch
DDo-While
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Switch". Cấu trúc này là rẽ nhánh nhiều lựa chọn: máy xét giá trị biểu thức, nhảy vào nhánh khớp rồi chạy một lần và đi ra, không có cơ chế quay lại kiểm điều kiện để lặp. Mục "For" là vòng lặp dùng khi biết trước số lần, có biến đếm, điều kiện dừng và bước nhảy. Mục "While" là vòng lặp kiểm điều kiện trước mỗi lần chạy thân, nên thân có thể không chạy lần nào. Mục "Do-While" cũng là vòng lặp nhưng kiểm điều kiện sau khi chạy thân, bảo đảm thân chạy ít nhất một lần. Ba cấu trúc đó đều có thể quay lại điểm đầu nhiều lần, điểm mà cấu trúc rẽ nhánh nhiều lựa chọn không có.
AA physical path used for data transmission between components
BA type of memory
CA backup storage system
DA processor's internal clock
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "A physical path used for data transmission between components". Bus là tập các đường dẫn vật lý nối các bộ phận để truyền tín hiệu: bus dữ liệu chở dữ liệu, bus địa chỉ chở địa chỉ ô nhớ hay thiết bị, bus điều khiển chở tín hiệu chỉ huy giữa bộ xử lý, bộ nhớ và các khối vào ra. Mục "A type of memory" hiểu sai bản chất, bus chỉ dẫn dữ liệu đi qua chứ không giữ lại gì. Mục "A backup storage system" nói về thiết bị lưu dự phòng, hoàn toàn khác một đường truyền. Mục "A processor's internal clock" là xung nhịp dùng để đồng bộ thời gian trong máy; nhịp này có thể quy định tốc độ truyền trên bus, nhưng bản thân bus vẫn là đường dây chứ không phải cái đồng hồ đó.
A
SamplingB
QuantizationC
EncryptionD
EncodingLời giải
Mở trang câu hỏi này →Đáp án đúng: "Encryption". Số hoá âm thanh gồm ba bước: lấy mẫu biên độ tín hiệu tại các thời điểm cách nhau đều đặn, lượng tử hoá để làm tròn mỗi mẫu về một mức giá trị, rồi mã hoá các mức đó thành dãy bit. Việc mã hoá bảo mật là bước bảo vệ thêm, dùng khi cần giữ kín tệp, chứ không cần cho việc biểu diễn âm thanh. Mục "Sampling" là bước đầu, quyết định tần số lấy mẫu. Mục "Quantization" là bước gán mỗi mẫu một giá trị trong tập hữu hạn, chỗ sinh ra sai số lượng tử. Mục "Encoding" là bước ghi kết quả thành số nhị phân với số bit cho mỗi mẫu. Bỏ bất kỳ bước nào trong ba bước đó thì không còn tệp âm thanh, còn bỏ việc mã hoá bảo mật thì tệp vẫn phát được.
AThe edges have no direction
BIt has one-way connections between nodes.
CThe edges have a specific starting and ending point
DA node only has one parent
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "The edges have no direction". Trong đồ thị vô hướng, một cạnh chỉ nói hai đỉnh có liên hệ với nhau mà không chỉ chiều, nên đi được từ đỉnh này sang đỉnh kia và ngược lại. Mục "It has one-way connections between nodes." mô tả đồ thị có hướng, nơi mỗi cung chỉ cho đi một chiều. Mục "The edges have a specific starting and ending point" cũng là đặc trưng của đồ thị có hướng, vì chỉ ở đó cạnh mới có đỉnh đầu và đỉnh cuối phân biệt. Mục "A node only has one parent" dùng khái niệm cha con của cây; đồ thị vô hướng không có gốc nên không có quan hệ cha con, hơn nữa một đỉnh có thể kề với bao nhiêu đỉnh khác cũng được.
AThe degree of dependency between modules.
BThe number of lines of code in a module.
CThe speed of program execution.
DThe total number of coupled modules in a system.
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "The degree of dependency between modules." Coupling đo mức ràng buộc giữa các mô-đun: hai mô-đun càng phải biết nhiều về nhau, càng dùng chung nhiều dữ liệu hay gọi sâu vào nhau thì càng khó sửa và khó dùng lại, nên thiết kế tốt hướng tới coupling thấp đi kèm cohesion cao. Mục "The number of lines of code in a module." chỉ là thước đo kích thước, một mô-đun ngắn vẫn có thể bị ràng buộc chặt. Mục "The speed of program execution." nói về hiệu năng khi chạy, không phải tính chất của cấu trúc thiết kế. Mục "The total number of coupled modules in a system." chỉ đếm số lượng, trong khi coupling là mức độ phụ thuộc của từng liên kết, hai hệ thống có cùng số mô-đun liên quan vẫn có thể khác nhau rất xa về mức ràng buộc.
AN(N-1)/2
BN
CN+1
D2N
ENone of the others
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "N(N-1)/2". Mỗi cặp đỉnh phân biệt chỉ nối được nhiều nhất một cạnh và cạnh không có hướng, nên số cạnh tối đa đúng bằng số cặp chọn được từ N đỉnh, tức N nhân với N trừ 1 rồi chia 2; đó là trường hợp đồ thị đầy đủ. Thử với bốn đỉnh thì công thức cho 6 cạnh, khớp với hình vẽ. Mục "N" quá nhỏ, bốn đỉnh nối đủ đã có 6 cạnh chứ không phải 4. Mục "N+1" cũng chỉ tăng theo đường thẳng nên không theo kịp mức tăng bình phương của số cặp đỉnh. Mục "2N" với bốn đỉnh cho 8 cạnh, vượt quá số cặp đỉnh thật có nên không thể vẽ được. Mục "None of the others" không dùng được vì công thức đúng đã nằm trong danh sách.
A
StarB
MeshC
RingD
SwitchLời giải
Mở trang câu hỏi này →Đáp án đúng: "Switch". Topology là cách bố trí và nối các nút trong mạng, bốn dạng thường gặp là bus, hình sao, vòng và lưới. Thiết bị chuyển mạch chỉ là một phần cứng dùng để nối các nút, nó không phải một cách bố trí; mạng dùng thiết bị này thường chính là mạng hình sao. Mục "Star" là dạng mọi nút nối về một điểm trung tâm, hỏng một nhánh thì chỉ mất nút đó. Mục "Mesh" là dạng mỗi nút nối trực tiếp tới nhiều nút khác, tốn đường dây nhưng rất bền. Mục "Ring" là dạng các nút nối thành vòng kín, dữ liệu đi theo vòng từ nút này sang nút kế tiếp. Ba lựa chọn đó đều mô tả hình trạng nên không thể là cái bị loại.
AMemory
BArithmetic Logic Unit (ALU)
CControl Unit
DInput/Output
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Memory". Điểm cốt lõi của kiến trúc von Neumann là chương trình được lưu trữ: cả lệnh và dữ liệu cùng nằm trong bộ nhớ chính dưới dạng nhị phân, bộ xử lý lần lượt lấy lệnh từ đó ra mà chạy. Mục "Arithmetic Logic Unit (ALU)" chỉ tính toán trên các toán hạng được đưa tới và trả kết quả, nó không giữ chương trình. Mục "Control Unit" chỉ giải mã lệnh và phát tín hiệu điều khiển, cũng không phải nơi lưu. Mục "Input/Output" là cửa giao tiếp với bên ngoài và với bộ nhớ phụ; dữ liệu có thể nằm trên ổ đĩa, nhưng muốn xử lý thì phải nạp vào bộ nhớ chính trước. Vài thanh ghi trong bộ xử lý cũng giữ dữ liệu, nhưng chỉ tạm thời cho lệnh đang chạy.
AElements stored in contiguous memory locations
BEach element containing a data part and a link (pointer) to the next element.
CDirect access to any element using an integer index
DElements always being of the same data type
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Each element containing a data part and a link (pointer) to the next element." Danh sách liên kết gồm các nút rời nhau, mỗi nút chứa phần dữ liệu và một con trỏ chỉ tới nút kế tiếp, nhờ vậy thêm hay xoá chỉ cần sửa con trỏ mà không phải dồn dịch cả dãy. Mục "Elements stored in contiguous memory locations" mô tả mảng, nơi các phần tử nằm liền nhau trong bộ nhớ; danh sách liên kết thì các nút có thể nằm rải rác. Mục "Direct access to any element using an integer index" cũng là tính chất của mảng, vì địa chỉ tính được từ chỉ số; muốn đến nút thứ k của danh sách liên kết thì phải đi lần lượt từ nút đầu. Mục "Elements always being of the same data type" đúng với nhiều cấu trúc dữ liệu khác nên không phân biệt được gì, và nó không nói lên cách các nút nối với nhau.
A2 phases: implementation and testing
B3 phases: design, implementation and testing
C4 phases: analysis, design, implementation and testing
D5 phases: planning, analysis, design, implementation and testing
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "4 phases: analysis, design, implementation and testing". Quá trình phát triển trong vòng đời phần mềm gồm bốn pha nối tiếp: phân tích để xác định phần mềm phải làm gì, thiết kế để quyết định làm thế nào và chia mô-đun, cài đặt để viết mã, kiểm thử để tìm lỗi so với đặc tả. Mục "2 phases: implementation and testing" bỏ mất cả phân tích và thiết kế, tức viết mã khi chưa biết yêu cầu. Mục "3 phases: design, implementation and testing" thiếu pha phân tích, trong khi chính pha này sinh ra tài liệu đặc tả làm căn cứ cho thiết kế và cho việc kiểm thử sau cùng. Mục "5 phases: planning, analysis, design, implementation and testing" thêm việc lập kế hoạch, thứ thuộc quản lý dự án và nằm trước quá trình phát triển, không phải một pha của nó.
AQueue
BStack
CLinked List
DBinary Tree
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Stack". Ngăn xếp chỉ cho thêm và lấy ở một đầu gọi là đỉnh, nên phần tử vào sau cùng lại là phần tử ra đầu tiên; đó đúng là nguyên tắc vào sau ra trước, thấy rõ trong việc lưu địa chỉ trở về khi gọi hàm. Mục "Queue" chạy theo nguyên tắc ngược lại là vào trước ra trước, thêm ở một đầu và lấy ở đầu kia. Mục "Linked List" chỉ là cách tổ chức lưu trữ bằng các nút nối bởi con trỏ, nó không áp đặt luật truy cập nào, thậm chí người ta dùng nó để hiện thực cả ngăn xếp lẫn hàng đợi. Mục "Binary Tree" là cấu trúc phân cấp, việc truy cập đi theo đường từ gốc xuống các nút con nên không có khái niệm vào sau ra trước.
84What was the first type of programming language?4 lựa chọn
AAssembly language
BHigh-level language
CMachine language
DObject-oriented language
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Machine language". Thời kỳ đầu, muốn máy chạy thì phải nạp trực tiếp các mẫu bit mà bộ xử lý hiểu được, nghĩa là viết bằng chính ngôn ngữ máy của phần cứng đó, không có lớp dịch nào ở giữa. Mục "Assembly language" ra đời sau để thay mẫu bit bằng các từ gợi nhớ, nhưng vẫn cần một chương trình dịch hợp ngữ chuyển về mã máy, nên nó không thể có trước. Mục "High-level language" xuất hiện muộn hơn nữa, dùng câu lệnh gần ngôn ngữ tự nhiên và cần trình biên dịch. Mục "Object-oriented language" là một dòng của ngôn ngữ bậc cao, ra đời sau cùng trong bốn lựa chọn, khi người ta đã cần tổ chức chương trình lớn theo lớp và đối tượng.