TURBO PASCAL ERRORS CODES

Document Sample
TURBO PASCAL ERRORS CODES Powered By Docstoc
					 TURBO PASCAL ERRORS CODES
 (CÁC MÃ LỖI CỦA TURBO PASCAL)
                                                                         Dịch và chú giải từ “Turbo Pascal 6: The Complete Reference”
                                                                                                                     Vương Đức Bình

 Lời người dịch:
         Đố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ằng
 tră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ếu
 ké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áo
 lỗ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ểu
 thô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.
         Để các bạn dễ tham khảo/so sánh tôi sẽ trình bày bản dịch này dưới dạng song ngữ. Tôi không hoàn toàn giữ nguyên gốc so
 với nguyên bản mà có thêm ít nhiều chú thích và thêm phần nguyên nhân phát sinh ra lỗi và cách khắc phục. Một số lỗi sẽ không có
 phần này (cách khắc phục) vì có thể tôi chưa gặp lỗi đó bao giờ … cho nên tôi không có kinh nghiệm khắc phục. Nếu bạn biết, xin
 thông báo cho tôi trên forum của Tổ bộ môn CNTT http://tobomoncntt.freeforums.org/, tôi sẽ rất cảm ơn và tôi sẽ bổ sung vào đây khi
 có thể.


I.   Compiler Error Messages
 (Các thông báo lỗi trong quá trình biên dịch)
 Compiler error messages refer to problems in your code or programming environment that prevent Turbo Pascal from produccing an
 executable file. In the integrated development environment, Turbo Pascal will attempt to locate the source-code location of the error.
 Các thông báo lỗi trong quá trình biên dịch liên quan đến những vấn đề trong mã chương trình hoặc môi trường lập trình gây cản ngại
 cho Turbo Pascal khi tạo ra file thực thi. Trong môi trường phát triển tích hợp, Turbo Pascal sẽ cố gắng định vị trí lỗi trong mã nguồn.
 Lưu ý của người dịch:
     a) Nếu bạn sử dụng IDE (integrated development environment) thông thường vị trí phát sinh ra lỗi trong mã nguồn nằm ngay
        trước vị trí con trỏ văn bản. Còn nếu bạn dịch mã nguồn FILENAME.PAS bằng TPC.EXE (Turbo Pascal Compiler) theo cú
        pháp

                                                                                                                                          1
                                           [drive:][path]TPC.EXE FILENAME.PAS 
    thì một thông báo lỗi dạng:
                                                   Error nnn: Error message
    Với nnn là mã lỗi và dòng lệnh bị lỗi sẽ được hiển thị sau dấu nhắc hệ thống cùng với một dấu “^” chỉ vị trí phát sinh lỗi.
b) Tiếng Anh và tiếng Việt không hoàn toàn tương đồng cho nên với cùng một thuật ngữ tiếng Anh tôi có thể sử dụng khá nhiều
   cách nói tiếng Việt khác nhau để dịch. Ví dụ rõ nhất là đối với từ “expected”, tôi có thể dịch là “chờ, đợi, chưa thấy, không
   thấy, yêu cầu, …tùy vào ngữ cảnh mà thuật ngữ đó được sử dụng … và đôi khi còn tùy vào tình huống lỗi. Trong trường hợp
   này - rất tiếc – đôi khi suy nghĩ trực tiếp bằng tiếng Anh là dễ dàng hơn.

       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
                                                                                                   Hoặc phải gở bỏ các chương
                                                                                                   trình đang chạy trong chế độ
                                                                                                   thường trú (SIDEKICK, v.v.)
                                                                                                   hoặc xem xét liệu virus có
                                                                         1.   Mã chương trình quá
                                                                                                   đang chiếm mất vùng nhớ
                                                                              lớn.
                                                                                                   hoặc phải sử dụng biện pháp
                                                                         2.   Mã dữ liệu quá lớn.
                                                                                                   overlay. Thông thường điều
                                                                         3.   Bị virus.
                                                                                                   này chỉ xảy ra trong môi
1    Out of memory                       Không đủ vùng nhớ               4.   Các chương trình
                                                                                                   trường thực (Real mode).
                                                                              thường trú chiếm bớt
                                                                                                   Nếu bạn chạy Borland Pascal
                                                                              vùng nhớ qui ước
                                                                                                   trong môi trường giả lập
                                                                              (conventional
                                                                                                   được bảo vệ (protected
                                                                              memory).
                                                                                                   mode) của Windows thì
                                                                                                   không xảy ra trường hợp này
                                                                                                   được (Windows cho phép sử
                                                                                                   dụng bộ nhớ ảo)
2    Identifier expected                 Chờ một danh biểu
                                                                         1. Quên khai báo biến.
                                                                         2. Gõ sai tên biến trong   1. Khai báo danh biểu này.
                                                                            chương trình.           2. Sửa chữa lỗi gõ sai.
3    Unknown identifier                  Không biết danh biểu này
                                                                         3. Gọi tới biến, danh biểu 3. Xem xét lại tầm vực của
                                                                            này ở ngoài tầm vực        danh biểu.
                                                                            của nó.



                                                                                                                                   2
                                                                   1. Tên biến trùng với tên
                                                                      chương trình.
                                                                                               1. Đặt lại tên biến hoặc tên
4    Duplicate identifier           Danh biểu bị trùng lặp         2. Khai báo lại tên biến
                                                                                                  chương trình.
                                                                      với kiểu dữ liệu khác
                                                                      trong cùng một khối.
5    Syntax error                   Lỗi cú pháp                                                Sửa lỗi cú pháp
6    Error in real constant         Lối về hằng số thực
7    Error in integer constant      Lỗi về hằng số nguyên
                                                                   Quên dấu nháy “’” kết
                                                                   thúc chuỗi.Thông thường
                                                                   là do lập trình viên quên   Bổ sung dấu nháy đằng sau
8    String constant exceeds line   Chuỗi dài quá một dòng
                                                                   dấu nháy kết thúc chuỗi     chuỗi.
                                                                   trong câu lệnh WRITE
                                                                   hoặc WRITELN.
9    Too many nested files          Quá nhiều file lồng nhau
                                                                                               Thông thường do lập trình
10   Unexpected end of file         Không tìm thấy kết thúc file   Quên từ khóa “END.”         viên quên hoặc dùng “END;”
                                                                                               ở cuối chương trình chính.
                                                                   Câu lệnh viết dài quá cột   Ngắt câu lệnh thành nhiều
11   Line too long                  Dòng quá dài
                                                                   128.                        dòng.
                                    Không thấy kiểu của danh       Quên khai báo kiểu của
12   Type identifier expected
                                    biểu                           biến.
                                                                                               Mở file C:\CONFIG.SYS
                                                                                               sửa lại dòng lệnh
                                                                                               Files=<số>. Hệ điều hành
                                                                                               DOS dùng con số này để
                                                                                               quyết định cho phép mở bao
                                                                                               nhiêu file cùng một lúc. Tăng
13   Too many open files            Mở quá nhiều file cùng lúc                                 <số> cho thích hợp với
                                                                                               chương trình đang viết. Mặc
                                                                                               định <số> là 15 nếu không
                                                                                               được khai báo trong
                                                                                               CONFIG.SYS. Không gặp
                                                                                               lỗi này nếu chạy trong môi
                                                                                               trường giả lập của Windows.



                                                                                                                              3
                                                                      Không tìm thấy thư mục
                                                                      đã định nghĩa trong        Khai báo lại thư mục hoặc
                                                                      [Options >Directories ]    xác định thư mục có thuộc
14   Invalid filename               Tên file không hợp lệ.            để lưu file này            tính Archive, bỏ thuộc tính
                                                                      Thư mục để lưu file này    hidden, bỏ thuộc tính read
                                                                      bị xác lập thuộc tính      only.
                                                                      Hidden hoặc Read Only
                                                                                                 Xem lại đường dẫn tới tên
15   File not found                 Không tìm thấy file
                                                                                                 file
                                                                                                 Xóa bớt các file không cần
16   Disk full                      Đĩa bị đầy                                                   thiết trên đĩa để lấy thêm chổ
                                                                                                 trống cho thao tác trên đĩa.
                                                                                                 Xem lại khai báo dẫn hướng
                                                                      Dùng một dẫn hướng
                                    Dẫn hướng biên dịch không                                    biên dịch. Gõ CTRL-O-O để
17   Invalid compiler directive                                       biên dịch không có trong
                                    hợp lệ                                                       xem các dẫn hướng biên dịch
                                                                      qui định
                                                                                                 được Pascal hỗ trợ mặc định.
18   Too many files                 Có quá nhiều file
                                    Định nghĩa con trỏ trỏ tới                                   Xem lại định nghĩa kiểu sau
19   Undefined type in pointer
                                    một kiểu chưa được định                                      từ khóa TYPE / Xem lại tên
     definition
                                    nghĩa                                                        kiểu coi có gõ nhầm không.
                                                                      Thông thường là do         Chỉ được phép truyền biến
20   Variable identifier expected   Yêu cầu danh biểu là biến
                                                                      truyền trị cho tham biến   cho tham biến mà thôi.
                                                                                                 Xem lại kiểu dữ liệu qui định
21   Error in type                  Lỗi về kiểu dữ liệu
                                                                                                 ở vị trí này.
22   Structure too large            Cấu trúc quá lớn
                                    Kiểu cơ sở bị vượt quá phạm
23   Set base type out of range
                                    vi dữ liệu
24   File components may not be     Không cho phép thành phần
     files or objects               của file là file hoặc đối tượng
25   Invalid string length          Chiều dài chuỗi không hợp lệ
                                                                                                 Hoặc khai báo lại kiểu dữ
                                                                      Hai vế của phép gán
                                                                                                 liệu cho phù hợp hoặc phải
26   Type mismatch                  Không khớp kiểu dữ liệu           không thuộc về cùng một
                                                                                                 dùng biện pháp ép kiểu (type
                                                                      kiểu dữ liệu
                                                                                                 casting).
                                    Phạm vi không khớp với
27   Invalid subrange base type
                                    phạm vi của kiểu cơ sở


                                                                                                                                  4
28   Lower bound greater than upper
                                      Cận dưới lớn hơn cận trên                                Khai báo lại
     bound
                                      Yêu cầu kiểu dữ liệu có thứ                              Sử dụng kiểu dữ liệu có thứ
29   Ordinal type expected
                                      tự                                                       tự (kiểu đếm được)
30   Integer constant expected.       Yêu cầu hằng số nguyên
31   Constant expected                Yêu cầu hằng số
32   Integer or real constant         Yêu cầu hằng số nguyên
     expected.                        hoặc hằng số thực
33   Type identifier expected         Không thấy định nghĩa kiểu                               Khai báo kiểu
                                                                    Kiểu dữ liệu trả về của
                                      Kiểu dữ liệu trả về của hàm                              Khai báo lại kiểu dữ liệu trả
34   Invalid function result type                                   hàm không phải là kiểu
                                      không hợp lệ                                             về.
                                                                    đơn giản, chuẩn
                                                                    Quên khai báo LABEL
                                      Yêu cầu danh biểu là một
35   Label identifier expected                                      trước khi dùng câu lệnh
                                      nhãn
                                                                    GOTO
                                                                    Thông thường lỗi này là
                                                                    do lập trình viên gõ sai
                                                                                               Kiểm tra lỗi gõ sai các từ
                                                                    các từ khóa trước BEGIN
                                                                                               khóa, các khai báo trước
36   Begin expected                   Không thấy BEGIN              của chương trình chính
                                                                                               BEGIN của chương trình
                                                                    nên trình biên dịch hiểu
                                                                                               chính.
                                                                    nhầm đã bắt đầu câu lệnh
                                                                    mà không có BEGIN.
                                                                    Thiếu từ khóa END
                                                                    tương ứng của BEGIN
37   End expected                     Không thấy END                hoặc của khai báo
                                                                    RECORD hoặc của cấu
                                                                    trúc CASE
38   Integer expression expected      Chờ một biểu thức nguyên
39   Ordinal expression expected      Chờ một biểu thức thứ tự
40   Boolean expression expected      Chờ một biểu thức logic
41   Operand types do not match       Toán hạng không phù hợp                                  Xem xét lại biểu thức xảy ra
     operator                         với toán tử                                              lỗi.
42   Error in expression              Có lỗi trong biểu thức
43   Illegal assignment               Phép gán bất hợp lệ
44   Field identifier expected        Chờ một danh biểu trường
45   Object file too large            File đối tượng quá lớn

                                                                                                                               5
                                                                  Sử dụng/gọi một thủ tục
                                                                  biên dịch sẳn dạng
                                                                                             Khai báo thủ tục hoặc hàm
46   Undefined external              Chưa định nghĩa External     thức .BIN nhưng chưa
                                                                                             EXTERNAL.
                                                                  khai báo thủ tục này là
                                                                  EXTERNAL
                                     Bản ghi của đối tượng file
47   Invalid object-file record
                                     không đúng
                                     Đoạn mã chương trình quá
48   Code segment too large
                                     lớn
49   Data segment too large          Đoạn mã dữ liệu quá lớn
                                                                  Viết thiếu từ khóa DO
50   Do expected                     Chờ DO                       sau câu lệnh FOR hoặc
                                                                  WHILE
                                     Định nghĩa public không
51   Invalid public definition
                                     đúng
                                     Định nghĩa External không
52   Invalid Extern definition
                                     đúng
                                     Quá nhiều định nghĩa
53   Too many Extern definitions
                                     External
                                                                  Viết thiếu từ khóa OF
54   Of expected                     Chờ OF
                                                                  trong câu lệnh CASE
                                                                  Viết thiếu từ khóa
55   Interface expected              Chờ INTERFACE                INTERFACE trong cấu
                                                                  trúc của UNIT.
                                     Liên hệ tái định vị không
56   Invalid relocatable reference
                                     đúng.
                                                                  Viết thiếu từ khóa THEN
57   Then expected                   Chờ THEN
                                                                  trong câu lệnh IF
                                                                  Viết thiếu từ khóa
58   To or Downto expected           Chờ TO hoặc DOWNTO           TO/DOWNTO trong câu
                                                                  lệnh FOR
                                                                  Các thủ tục gọi lẫn nhau
                                                                  nhưng quên khai báo        Phải khai báo FORWARD
                                     Chưa định nghĩa
59   Undefined forward                                            FORWARD. Thường            cho tất cả thủ tục, hàm có gọi
                                     FORWARD
                                                                  xảy ra trong trường hợp    lẫn nhau.
                                                                  đệ qui hỗ tương.
60   Too many procedures             Quá nhiều PROCEDURE
                                                                                                                              6
61   Invalid typecast                 Ép kiểu không đúng
                                                                      1. Thực hiện một phép
                                                                         chia cho 0 trong biểu    1. Xem lại biểu thức.
                                                                         thức.                    2. Cập nhật file
62   Division by zero                 Chia cho số 0                   2. Unit CRT bị lỗi do tốc      TURBO.TPL (Trong
                                                                         độ bộ xử lí lớn hơn         hướng dẫn sửa lỗi khi cài
                                                                         300 MHz. (Từ các đời        đặt TURBO PASSCAL)
                                                                         máy 80846 trở đi)
63   Invalid file type                Kiểu file không đúng
                                                                      Thông thường là do
64   Cannot read or write variables   Không thể đọc hoặc ghi biến                                 Đọc/Ghi gián tiếp cho kiểu
                                                                      muốn đọc hoặc ghi trực
     of this type                     thuộc kiểu dữ liệu này                                      dữ liệu này.
                                                                      tiếp dữ liệu kiểu Boolean
65   Pointer variable expected        Chờ biến kiểu con trỏ
66   String variable expected         Chờ biến kiểu chuỗi
67   String expression expected       Chờ biểu thức chuỗi
68   Circular unit reference          Liên hệ Unit lòng vòng          Các Unit gọi lẫn nhau.
69   Unit name mismatch               Tên Unit không khớp
70   Unit version mismatch            Phiên bản Unit không khớp
71   Duplicate unit name              Trùng lặp tên Unit
72   Unit file format error           Lỗi trong dạng thức file Unit
                                                                      Viết thiếu từ khóa
73   Implementation expected          Chờ IMPLEMENTATION              IMPLEMENTATION
                                                                      trong cấu trúc của UNIT.
74   Constant and case types do not   Hằng và kiểu giá trị hằng
     match                            không khớp.
75   Record variable expected         Chờ đợi biến kiểu bản ghi
76   Constant out of range            Hằng vượt quá phạm vi
77   File variable expected           Chờ biến kiểu File
78   Pointer expression expected      Chờ biểu thức kiểu con trỏ
79   Integer or real expression       Chờ biểu thức nguyên hoặc
     expected                         thực
                                                                                                  Xem lại vị trí định nghĩa
                                      Nhãn không thuộc về block
80   Label not within current block                                                               nhãn hoặc xem lại tầm vực
                                      hiện tại
                                                                                                  của nhãn.
                                      Nhãn này đã được định nghĩa
81   Label already defined
                                      rồi

                                                                                                                                 7
82   Undefined label in preceding       Nhãn chưa được định nghĩa
     statement part                     trong phần phát biểu trước
83   Invalid @ argument                 Sử dụng sai đối số @
84   Unit expected                      Chờ đợi Unit
85   “;” expected                       Chờ đợi “;”                                              Thêm “;”
86   “:” expected                       Chờ đợi “:”                                              Thêm “:”
87   “,” expected                       Chờ đợi “,”                                              Thêm “,”
88   “(“ expected                       Chờ đợi “(“                                              Thêm “(“
                                                                      Đây là những lỗi khá phổ
89   “)” expected                       Chờ đợi “)”                                              Thêm “)”
                                                                      biến. Thông thường là do
90   “=” expected                       Chờ đợi “=”                                              Thêm “=”
                                                                      gõ sai hoặc gõ sót các
91   “:=” expected                      Chờ đợi “:=”                                             Thêm “:=”
                                                                      token “;”,….
92   “[“ or “(.” expected               Chờ đợi “[“ hoặc “(.”                                    Thêm “[“ hoặc “(.”
93   “]” or “.)” expected               Chờ đợi “]” hoặc “.)”                                    Thêm “]” hoặc “.)”
94   “.” expected                       Chờ đợi “.”                                              Thêm “.”
95   “..” expected                      Chờ đợi “..”                                             Thêm “..”
                                                                                                 Giảm bớt số biến đã khai
                                                                                                 báo. Thông thường nên tăng
96   Too many variables                 Quá nhiều biến
                                                                                                 cường sử dụng biến cục bộ
                                                                                                 thay cho biến toàn cục
                                                                      Đã dùng biến điều khiển
                                        Biến điều khiển vòng lặp                                 Thay đổi kiểu của biến điều
97   Invalid For control variable                                     vòng lặp thuộc kiểu
                                        FOR không thích hợp                                      khiển vòng lặp FOR.
                                                                      không có thứ tự
98   Integer variable expected          Chờ một biến kiểu số nguyên
                                        Không cho phép dùng File ở
99   Files are not allowed here
                                        đây
                                        Chiều dài của chuỗi không
100 String length mismatch
                                        khớp
101 Invalid ordering of fields          Thứ tự các field không đúng
102 String constant expected            Chờ đợi một hằng chuỗi
                                        Chờ đợi biến nguyên hoặc
103 Integer or real variable expected
                                        thực
104 Ordinal variable expected           Chờ đợi biến thứ tự
                                                                                                 Xem lại các đoạn mã
                                                                      Chèn mã assembly trực
                                                                                                 assembly. Đảm bảo đúng cú
105 Inline error                        Lỗi INLINE                    tiếp vào chương trình
                                                                                                 pháp của Microsoft
                                                                      nguồn gây ra lỗi.
                                                                                                 Assembly.
106 Character expression expected       Chờ đợi biểu thức kí tự
                                                                                                                               8
107 Too many relocation items         Quá nhiều mục tái định vị
108
109
110
111
                                      Hằng trị trong câu lệnh
112 Case constant out of range
                                      CASE vượt quá phạm vi
113 Error in statement                Sai lầm trong câu lệnh
114 Cannot call an interrupt
                                      Không gọi được thủ tục ngắt
    procedure
115
                                                                                                 - Lỗi này không xảy ra nữa
                                                                                                 kể từ thế hệ máy 80386 DX.
116 Must be in 8087 mode to           Cần bộ xử lí dấu chấm động
                                                                                                 - Trong menu [Options >
    compile this                      8087 để biên dịch phần này
                                                                                                 Compiler] đánh dấu kiểm
                                                                                                 vào ô 8087/80287.
                                      Không tìm thấy địa chỉ mục
117 Target address not found
                                      tiêu
118 Include files are not allowed     Không được phép INCLUDE
    here                              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
                                                                                                 Phải khai báo tham biến cho
                                                                      Đã khai báo biến kiểu
                                      Phải sử dụng tham biến cho                                 mọi tham số kiểu File trong
126 Files must be Var parameters                                      file như là một tham trị
                                      kiểu dữ liệu File                                          header của Procedure hoặc
                                                                      trong header
                                                                                                 Function.
127 Too many conditional symbols      Quá nhiều kí hiệu điều kiện
                                      Đặt dẫn hướng điều kiện
128 Misplaced conditional directive
                                      không đúng chỗ
129 ENDIF directive missing           Sai lầm ở dẫn hướng ENDIF
130 Error in initial conditional      Sai lầm ở khởi tạo định nghĩa
    defines                           điều kiện
                                                                                                                               9
                                                                                                  Khai báo các header trong
131 Header does not match previous     HEADER không khớp với                                      phần INTERFACE và trong
    definition                         định nghĩa trước đó.                                       IMPLEMENTATION của
                                                                                                  Unit phải khớp nhau.
                                                                     Đây là lỗi khá khó chịu!
                                                                     Có thể đĩa bị hỏng, bị lỗi
132 Critical disk error                Đĩa có lỗi nghiêm trọng                                    Xem xét lại ổ đĩa và đĩa
                                                                     CRC, quên bẻ chốt khóa
                                                                     (đối với ổ đĩa mềm),…
                                       Không lượng giá biểu thức                                  Xem xét lại cú pháp của biểu
133 Cannot evaluate this expression
                                       này được                                                   thức.
134 Expression incorrectly                                           Thông thường là do thiếu
                                       Biểu thức kết thúc sai
    terminated                                                       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       Không cho phép biến có cấu
                                                                                                  Sử dụng biến kiểu đơn giản.
    allowed here.                      trúc ở đây.
                                                                     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ó        - Tích hợp SYSTEM.TPU
138 Cannot evaluate without            Không thể lượng giá mà        thể là do Unit SYSTEM          vào TURBO.TPL trở lại.
    SYSTEM unit                        không có unit SYSTEM          đã bị gỡ bỏ khỏi             - Khai báo USES
                                                                     TURBO.TPL. Dùng                SYSTEM;
                                                                     TPUMOVER.EXE để
                                                                     xem lại các Unit còn
                                                                     đang được tích hợp trong
                                                                     TURBO.TPL
                                                                                                  Có thể phải khai báo dẫn
                                       Không thể truy cập kí hiệu                                 hướng biên dịch {$ F+} -
139 Cannot access this symbol
                                       này                                                        Force far call - để truy cập/
                                                                                                  gọi được kí hiệu này
                                       Tác vụ xử lí dấu chấm động
140 Invalid floating-point operation
                                       sai
141 Cannot compile overlays to         Không thể biên dịch Overlay
    memory                             vào bộ nhớ


                                                                                                                                  10
142 Procedure or function variable    Chờ đợi biến thủ tục hoặc
    expected                          biến hàm.
143 Invalid procedure or function
                                      Liên hệ thủ tục hoặc hàm sai
    reference
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        Không cho phép dùng kiểu
    allowed here                      đối tượng ở đây.
                                      Chờ đợi VIRTUAL (phương
149 VIRTUAL expected
                                      thức ảo)
                                      Chờ đợi danh biểu là phương
150 Method identifier expected
                                      thức
151 Virtual constructors are not      Không cho phép phương
    allowed                           thức thiết lập ảo
                                      Chờ đợi danh biểu
152 Constructor identifier expected   CONSTRUCTOR (phương
                                      thức thiết lập)
                                      Chờ đợi danh biểu
153 Destructor identifier expected    DESTRUCTOR (phương
                                      thức hủy)
154 Fail only allowed within          Chỉ cho phép Fail bên trong
    constructors                      CONSTRUCTOR
155 Invalid combination of opcode     Sai lầm trong phối hợp mã
    and operands                      lệnh và toán hạng
                                      Chờ đợi một tham khảo đến
156 Memory reference expected
                                      bộ nhớ.
157 Cannot add or substract           Không thể thêm hoặc bớt các
    relocatable symbols               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      Không thể dùng các chỉ thị     Chỉ xảy ra trên các máy
    enabled                           286/287                        8088/8086.
160 Invalid symbol reference          Liên hệ kí hiệu sai
161 Code generation error.            Lỗi phát sinh mã


                                                                                               11
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
                                                                                                          Như lỗi số 13 compile time
      4       Too many open files        Mở quá nhiều File cùng lúc
                                                                                                          error.
                                                                         1. File còn đang được mở bởi
                                                                         một chương trình khác.
      5       File access denied         Bị từ chối truy cập File
                                                                         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
                                                                         Truy cập một ổ đĩa không
      15      Invalid drive number       Sai ở số hiệu ổ đĩa
                                                                         được hỗ trợ bởi Turbo Pascal.
                                                                         1. Thư mục đang được gán         1. Set lại thuộc tính thư mục.
      16      Cannot remove current      Không gỡ bỏ thư mục này         thuộc tính Read only.            2. Xóa hết các File đang còn
              directory                  được                            2. Thư mục đang còn chứa         tồn tại trong thư mục, kể cả
                                                                         File.                            các file ẩn.
                                                                                                          File cũ và File đó mới được
      17      Cannot rename across       Không thể đặt lại tên File từ
                                                                                                          đặt tên lại phải nằm trong
              drives                     đĩa này qua đĩa kia
                                                                                                          cùng thư mục.

      I/O Errors
                                                                                                                                         12
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)
103   File not open            File chưa được mở                 Thiếu câu lệnh Reset(File)
                                                                                                 Xem lại chương trình
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)
                                                                 Thủ tục Read hoặc Readln của
                                                                 Pascal được quá tải cho nhiều
                                                                                                 Đừng sử dụng các thủ tục
                                                                 kiểu dữ liệu khác nhau nên
                                                                                                 Read hoặc Readln được cung
                                                                 gây ra lỗi này khi người dùng
106   Invalid numeric format    Sai dạng thức dữ liệu số                                         cấp sẳn. Lập trình viên nên
                                                                 nhập dữ liệu kiểu chữ thay vì
                                                                                                 viết riêng cho mình các thủ tục
                                                                 nhập dữ liệu kiểu số cho một
                                                                                                 nhập có kiểm tra dữ liệu nhập.
                                                                 biến kiểu số.


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
                                                                                                 Bật tab write-protected về chế
105   Disk is write-protected   Đĩa bị chống ghi
                                                                                                 độ 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
                                                                                                 Xem lại câu lệnh và tham số
153   Unknown command           Không biết câu lệnh này
                                                                                                 dòng lệnh.
                                                                                                 1. Cập nhật lại file dữ liệu.
                                                                 CRC: Cyclic Redundancy
154   CRC error in data         Dữ liệu bị lỗi CRC                                               2. Kiểm tra lại tình trạng vật lí
                                                                 Check. Lỗi ở mã vòng sửa sai.
                                                                                                 của đĩa.
155   Bad drive request         Sai trong cấu trúc dữ liệu của
      structure length          đĩa.
                                                                 1. Có thể do cross-link file.
156   Disk seek error           Sai khi đọc đĩa                                                  Xem lại đĩa.
                                                                 2. Có thể do bảng FAT (File

                                                                                                                               13
                                                                  allocation table) hoặc bảng
                                                                  DIR bị hỏng.
                                                                  Đĩa được Format bởi một hệ
                                                                  điều hành khác hoặc một ổ đĩa
157    Unknown media type         Không biết kiểu dữ liệu này                                     Sử dụng đĩa đúng format.
                                                                  chưa được hỗ trợ bởi Turbo
                                                                  Pascal.
                                                                   1. Đĩa bị hỏng                 Sử dụng đĩa khác để ghi/đọc
158    Sector not found           Không tìm thấy cung từ này
                                                                   2. Lỗi cross-link file         dữ liệu
159    Printer out of paper       Máy in hết giấy
160    Device write fault         Lỗi xuất ra thiết bị                                            Kiểm tra lại các thiết bị liên
161    Device read fault          Lỗi khi đọc từ thiết bị                                         quan.
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ú
                                                                          Kiểm tra lại diễn tiến của các
200    Division by zero                      Thực hiện phép chia cho số 0
                                                                          biến trong chương trình
                                                                          Dùng dẫn hướng biên dịch
201    Range check error                     Lỗi vượt quá phạm vi dữ liệu
                                                                          {$R-} nhưng phải cẩn thận.
                                                                                                           Đây là các lỗi làm
                                                                          1. Kiểm tra lại tổng kích
                                                                                                           dừng ngay chương
                                                                          thước các biến đã khai báo
                                                                                                           trình đang thực thi.
                                                                          trong chương trình, trong
                                                                                                           Một số trường hợp có
                                                                          từng thủ tục.
                                                                                                           thể gây Halt toàn bộ
                                                                          2. Giới hạn độ sâu của các
202    Stack overflow error                  Lỗi tràn stack                                                hệ thống.
                                                                          lời gọi đệ qui.
                                                                                                           Thông thường lập
                                                                          3. Dùng dẫn hướng biên dịch
                                                                                                           trình viên cần phải
                                                                          {$M xxxx, yy, zzzz} để yêu
                                                                                                           xem lại phân tích
                                                                          cầu một vùng stack lớn hơn
                                                                                                           lôgich của chương
                                                                          (xxxx: stack size).
                                                                                                           trình để sử dụng các
                                                                          1. Giới hạn số lời gọi cấp
                                                                                                           kiểu dữ liệu khác
                                                                          phát con trỏ qua lệnh NEW.
                                                                                                           thích hợp hơn.
                                                                          2. Phối hợp sử dụng các lệnh
203    Heap overflow error                   Lỗi tràn Heap
                                                                          NEW, Mark, Dispose và
                                                                          Release để quản lí tốt hơn
                                                                          vùng Heap

                                                                                                                                   14
                                                                        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
                                         Lỗi xử lí đấu chấm động bị
205   Floating-point overflow                                           Dùng kiểu dữ liệu có phạm
                                         tràn.
                                                                        vi lớn hơn (Dùng kiểu
                                         Lỗi xử lí dấu chấm động bị
206   Floating-point underflow                                          Extended thay cho kiểu Real)
                                         hụt
207   Invalid floating-point operation   Sai ở tác vụ dấu chấm động.
                                         Chưa cài đặt trình quản lí
208   Overlay manager not installed
                                         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.
                                         Gọi tới một phương thức
211   Call to abstract method
                                         trừu tượng
212   Stream registration error          Lỗi đăng kí dòng dữ liệu.
                                         Chỉ mục tuyển tập vượt quá
213   Collection index out of range
                                         phạm vi
214   Collection overflow error.         Lỗi tràn tuyển tập




                                                                                                       15

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:717
posted:9/2/2010
language:Vietnamese
pages:15
Jun Wang Jun Wang Dr
About Some of Those documents come from internet for research purpose,if you have the copyrights of one of them,tell me by mail vixychina@gmail.com.Thank you!