Các mã lỗi của Turbo Pascal

Đối với người mới học lập trình, viết chương trình bị lỗi là chuyện “thường ngày ở huyện”. Mỗi ngôn ngữ đều dự trù hằngtrăm, nếu không nói là hàng ngàn, thông báo lỗi khác nhau như một sự trợ giúp để chúng ta khắc phục lỗi đó. Một số thông báo lỗi thìđơn giản, rõ ràng nhưng một số thông báo lỗi có thể dẫn những lập trình viên “mới chập chửng” vào một trò chơi trốn tìm rất đau đầuđến nỗi có khi chính sự trợ giúp này lại gây ra vấn đề còn lớn hơn cả bản thân lỗi. Vì lẽ đó đọc hiểu được các thông báo lỗi và từ đó

suy ra cách khắc phục lỗi cũng là một yêu cầu quan trọng trong quá trình học lập trình.

Mặt khác, thực tế đa số sinh viên CNTT trong năm đầu thường không đủ vốn từ vựng về thuật ngữ tin học, cộng với sự yếukém về giảng dạy ngoại ngữ thâm căn cố đế do các trường PTTH gây ra làm cho sinh viên không đủ năng lực đọc hiểu các thông báolỗi trực tiếp bằng tiếng Anh. Tài liệu này chỉ mong làm được có một việc: giúp các bạn sinh viên đó tiếp cận dễ hơn với việc đọc hiểuthông báo lỗi. Nhưng các bạn cũng đừng ỷ lại vào tài liệu này. Tốt hơn hết các bạn nên tập làm quen dần với việc đọc trực tiếp, suy

nghĩ trực tiếp bằng tiếng Anh. Tiếng Việt thì đẹp đẻ và là ngôn ngữ của cha ông mà chúng ta cần trân quí và làm cho nó phát triển.

Nhưng ở đây là khoa học kỹ thuật, bạn cần xây dựng khả năng tiếp cận thật nhanh thông tin khoa học kỹ thuật.

pdf15 trang | Chuyên mục: Pascal | Chia sẻ: dkS00TYs | Lượt xem: 3568 | Lượt tải: 1download
Tóm tắt nội dung Các mã lỗi của Turbo Pascal, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
d 
here 
Không được phép INCLUDE 
file ở vị trí này 
119 
120 Nil expected Chờ đợi con trỏ NIL 
121 Invalid qualifier Danh biểu không đúng 
122 Invalid variable reference Liên hệ biến không đúng 
123 Too many symbols Có quá nhiều kí hiệu 
124 Statement part too long Câu lệnh quá dài 
125 
126 Files must be Var parameters 
Phải sử dụng tham biến cho 
kiểu dữ liệu File 
Đã khai báo biến kiểu 
file như là một tham trị 
trong header 
Phải khai báo tham biến cho 
mọi tham số kiểu File trong 
header của Procedure hoặc 
Function. 
127 Too many conditional symbols Quá nhiều kí hiệu điều kiện 
128 Misplaced conditional directive 
Đặt dẫn hướng điều kiện 
không đúng chỗ 
129 ENDIF directive missing Sai lầm ở dẫn hướng ENDIF 
130 Error in initial conditional 
defines 
Sai lầm ở khởi tạo định nghĩa 
điều kiện 
 10 
131 Header does not match previous 
definition 
HEADER không khớp với 
định nghĩa trước đó. 
Khai báo các header trong 
phần INTERFACE và trong 
IMPLEMENTATION của 
Unit phải khớp nhau. 
132 Critical disk error Đĩa có lỗi nghiêm trọng 
Đây là lỗi khá khó chịu! 
Có thể đĩa bị hỏng, bị lỗi 
CRC, quên bẻ chốt khóa 
(đối với ổ đĩa mềm),… 
Xem xét lại ổ đĩa và đĩa 
133 Cannot evaluate this expression 
Không lượng giá biểu thức 
này được 
Xem xét lại cú pháp của biểu 
thức. 
134 Expression incorrectly 
terminated 
Biểu thức kết thúc sai 
Thông thường là do thiếu 
toán hạng, thiếu dấu “)” 
135 Invalid format specifier Sai ở bộ xác định dạng thức 
136 Invalid indirect reference Liên hệ gián tiếp sai 
137 Structured variables are not 
allowed here. 
Không cho phép biến có cấu 
trúc ở đây. 
 Sử dụng biến kiểu đơn giản. 
138 Cannot evaluate without 
SYSTEM unit 
Không thể lượng giá mà 
không có unit SYSTEM 
Thông thường Unit 
SYSTEM được tải lên 
mặc định khi gọi Pascal 
mà không cần khai báo 
qua câu lệnh USES. Có 
thể là do Unit SYSTEM 
đã bị gỡ bỏ khỏi 
TURBO.TPL. Dùng 
TPUMOVER.EXE để 
xem lại các Unit còn 
đang được tích hợp trong 
TURBO.TPL 
- Tích hợp SYSTEM.TPU 
vào TURBO.TPL trở lại. 
- Khai báo USES 
SYSTEM; 
139 Cannot access this symbol 
Không thể truy cập kí hiệu 
này 
Có thể phải khai báo dẫn 
hướng biên dịch {$ F+} -
Force far call - để truy cập/ 
gọi được kí hiệu này 
140 Invalid floating-point operation 
Tác vụ xử lí dấu chấm động 
sai 
141 Cannot compile overlays to 
memory 
Không thể biên dịch Overlay 
vào bộ nhớ 
 11 
142 Procedure or function variable 
expected 
Chờ đợi biến thủ tục hoặc 
biến hàm. 
143 Invalid procedure or function 
reference 
Liên hệ thủ tục hoặc hàm sai 
144 Cannot overlay this unit Không thể overlay unit này 
145 
146 
147 Object type expected Chờ đợi kiểu đối tượng 
148 Local object types are not 
allowed here 
Không cho phép dùng kiểu 
đối tượng ở đây. 
149 VIRTUAL expected 
Chờ đợi VIRTUAL (phương 
thức ảo) 
150 Method identifier expected 
Chờ đợi danh biểu là phương 
thức 
151 Virtual constructors are not 
allowed 
Không cho phép phương 
thức thiết lập ảo 
152 Constructor identifier expected 
Chờ đợi danh biểu 
CONSTRUCTOR (phương 
thức thiết lập) 
153 Destructor identifier expected 
Chờ đợi danh biểu 
DESTRUCTOR (phương 
thức hủy) 
154 Fail only allowed within 
constructors 
Chỉ cho phép Fail bên trong 
CONSTRUCTOR 
155 Invalid combination of opcode 
and operands 
Sai lầm trong phối hợp mã 
lệnh và toán hạng 
156 Memory reference expected 
Chờ đợi một tham khảo đến 
bộ nhớ. 
157 Cannot add or substract 
relocatable symbols 
Không thể thêm hoặc bớt các 
kí hiệu khả tái định vị 
158 Invalid register combination Phối hợp sai thanh ghi 
159 286/287 Instructions are not 
enabled 
Không thể dùng các chỉ thị 
286/287 
Chỉ xảy ra trên các máy 
8088/8086. 
160 Invalid symbol reference Liên hệ kí hiệu sai 
161 Code generation error. Lỗi phát sinh mã 
 12 
II. Run-time error messages 
A run-time error is an error condition that occurs while your program is running. When such an error occurs, Turbo Pascal display 
this message: 
Run-time error nnn at xxxx:yyyy 
Where nnnn is the numeric code for the run-time error, xxxx is the program segment in which the error occurred, and yyyy is the 
offset of the location of the error. 
Lỗi trong thời gian chạy là lỗi xảy ra khi bạn đang cho chương trình hoạt động. Khi loại lỗi này xảy ra, Turbo Pascal cho hiện 
thông báo này: 
Run-time error nnn at xxxx:yyyy 
Trong đó nnn là mã lỗi, xxxx là phân đoạn của chương trình và yyyy là độ dời trong phân đoạn tại vị trí mã lệnh gây ra lỗi. 
Dos Errors 
Lỗi thuộc hệ điều hành đĩa. 
Mã lỗi và thông báo lỗi Ý nghĩa Các nguyên nhân có thể Hướng khắc phục 
2 File not found Không tìm thấy File 
Xem lại tên file, đường dẫn. 
3 Path not found Không tìm thấy đường dẫn 
4 Too many open files Mở quá nhiều File cùng lúc 
Như lỗi số 13 compile time 
error. 
5 File access denied Bị từ chối truy cập File 
1. File còn đang được mở bởi 
một chương trình khác. 
2. Ghi đè lên một file đang có 
thuộc tính read only. 
6 Invalid file handle Sai ở thẻ File 
12 Invalid file access code Sai khi truy cập File 
15 Invalid drive number Sai ở số hiệu ổ đĩa 
Truy cập một ổ đĩa không 
được hỗ trợ bởi Turbo Pascal. 
16 Cannot remove current 
directory 
Không gỡ bỏ thư mục này 
được 
1. Thư mục đang được gán 
thuộc tính Read only. 
2. Thư mục đang còn chứa 
File. 
1. Set lại thuộc tính thư mục. 
2. Xóa hết các File đang còn 
tồn tại trong thư mục, kể cả 
các file ẩn. 
17 Cannot rename across 
drives 
Không thể đặt lại tên File từ 
đĩa này qua đĩa kia 
File cũ và File đó mới được 
đặt tên lại phải nằm trong 
cùng thư mục. 
I/O Errors 
 13 
Lỗi các thao tác nhập/xuất 
Mã lỗi và thông báo lỗi Ý nghĩa Các nguyên nhân có thể Hướng khắc phục 
100 Disk read error Lỗi đọc đĩa 
Xem lại đĩa 
101 Disk write error Lỗi ghi đĩa 
102 File not assigned File chưa được gán Thiếu câu lệnh Assign(File, 
Filename) 
Xem lại chương trình 
103 File not open File chưa được mở Thiếu câu lệnh Reset(File) 
104 File not open for input File chưa được mở để ghi Thiếu câu lệnh Rewrite(File) 
105 File not open for output File không được mở để ghi Ghi lên một File đã bị đóng 
bởi lệnh Close(File) 
106 Invalid numeric format Sai dạng thức dữ liệu số 
Thủ tục Read hoặc Readln của 
Pascal được quá tải cho nhiều 
kiểu dữ liệu khác nhau nên 
gây ra lỗi này khi người dùng 
nhập dữ liệu kiểu chữ thay vì 
nhập dữ liệu kiểu số cho một 
biến kiểu số. 
Đừng sử dụng các thủ tục 
Read hoặc Readln được cung 
cấp sẳn. Lập trình viên nên 
viết riêng cho mình các thủ tục 
nhập có kiểm tra dữ liệu nhập. 
Critical Errors 
Các lỗi nghiêm trọng 
Mã lỗi và thông báo lỗi Ý nghĩa Các nguyên nhân có thể Hướng khắc phục 
105 Disk is write-protected Đĩa bị chống ghi 
Bật tab write-protected về chế 
độ write enabled. 
151 Unkown unit Không có Unit này 
152 Drive not ready Ổ đĩa chưa sẳn sàng Xem lại ổ đĩa 
153 Unknown command Không biết câu lệnh này 
Xem lại câu lệnh và tham số 
dòng lệnh. 
154 CRC error in data Dữ liệu bị lỗi CRC 
CRC: Cyclic Redundancy 
Check. Lỗi ở mã vòng sửa sai. 
1. Cập nhật lại file dữ liệu. 
2. Kiểm tra lại tình trạng vật lí 
của đĩa. 
155 Bad drive request 
structure length 
Sai trong cấu trúc dữ liệu của 
đĩa. 
156 Disk seek error Sai khi đọc đĩa 
1. Có thể do cross-link file. 
2. Có thể do bảng FAT (File 
Xem lại đĩa. 
 14 
allocation table) hoặc bảng 
DIR bị hỏng. 
157 Unknown media type Không biết kiểu dữ liệu này 
Đĩa được Format bởi một hệ 
điều hành khác hoặc một ổ đĩa 
chưa được hỗ trợ bởi Turbo 
Pascal. 
Sử dụng đĩa đúng format. 
158 Sector not found Không tìm thấy cung từ này 
1. Đĩa bị hỏng 
2. Lỗi cross-link file 
Sử dụng đĩa khác để ghi/đọc 
dữ liệu 
159 Printer out of paper Máy in hết giấy 
Kiểm tra lại các thiết bị liên 
quan. 
160 Device write fault Lỗi xuất ra thiết bị 
161 Device read fault Lỗi khi đọc từ thiết bị 
162 Hardware failure Lỗi phần cứng 
Fatal Errors 
Các lỗi chí tử. 
Mã lỗi và thông báo lỗi Ý nghĩa Hướng khắc phục Ghi chú 
200 Division by zero Thực hiện phép chia cho số 0 
Kiểm tra lại diễn tiến của các 
biến trong chương trình 
Đây là các lỗi làm 
dừng ngay chương 
trình đang thực thi. 
Một số trường hợp có 
thể gây Halt toàn bộ 
hệ thống. 
Thông thường lập 
trình viên cần phải 
xem lại phân tích 
lôgich của chương 
trình để sử dụng các 
kiểu dữ liệu khác 
thích hợp hơn. 
201 Range check error Lỗi vượt quá phạm vi dữ liệu 
Dùng dẫn hướng biên dịch 
{$R-} nhưng phải cẩn thận. 
202 Stack overflow error Lỗi tràn stack 
1. Kiểm tra lại tổng kích 
thước các biến đã khai báo 
trong chương trình, trong 
từng thủ tục. 
2. Giới hạn độ sâu của các 
lời gọi đệ qui. 
3. Dùng dẫn hướng biên dịch 
{$M xxxx, yy, zzzz} để yêu 
cầu một vùng stack lớn hơn 
(xxxx: stack size). 
203 Heap overflow error Lỗi tràn Heap 
1. Giới hạn số lời gọi cấp 
phát con trỏ qua lệnh NEW. 
2. Phối hợp sử dụng các lệnh 
NEW, Mark, Dispose và 
Release để quản lí tốt hơn 
vùng Heap 
 15 
3. Dùng dẫn hướng biên dịch 
{$M xxxx,yy,zzzz} để yêu 
cầu một vùng heap lớn hơn 
(yy: heapmin; zzzz: 
heapmax). 
204 Invalid pointer operation Tác vụ con trỏ không đúng 
205 Floating-point overflow 
Lỗi xử lí đấu chấm động bị 
tràn. 
Dùng kiểu dữ liệu có phạm 
vi lớn hơn (Dùng kiểu 
Extended thay cho kiểu Real) 206 Floating-point underflow 
Lỗi xử lí dấu chấm động bị 
hụt 
207 Invalid floating-point operation Sai ở tác vụ dấu chấm động. 
208 Overlay manager not installed 
Chưa cài đặt trình quản lí 
overlay. 
209 Overlay file read error Bị lỗi khi đọc file overlay. 
210 Object not initialized Chưa khởi tạo đối tượng. 
211 Call to abstract method 
Gọi tới một phương thức 
trừu tượng 
212 Stream registration error Lỗi đăng kí dòng dữ liệu. 
213 Collection index out of range 
Chỉ mục tuyển tập vượt quá 
phạm vi 
214 Collection overflow error. Lỗi tràn tuyển tập 

File đính kèm:

  • pdfCác mã lỗi của Turbo Pascal.pdf
Tài liệu liên quan