2010-04-21 32 views
5

Tôi đang chạy Turbo Pascal 3.01A trên CP/M 2.2. Giả sử chương trình Pascal của tôi, mà tôi chạy bằng cách sử dụng tùy chọn trình đơn R trong Turbo Pascal, có một lỗi và đi vào một vòng lặp vô hạn. Có một nhân vật điều khiển đặc biệt nào sẽ làm gián đoạn chương trình của tôi và quay lại menu Turbo Pascal không?Chấm dứt chương trình treo và quay lại Turbo Pascal 3

+0

Wow! Chúng ta có thể hỏi tại sao? –

+3

@Neil Butterworth, chỉ là nỗi nhớ. Có điều gì đó rất thư giãn và thỏa mãn về việc thoát khỏi thế giới ngày nay của những thư viện mờ đục, mờ đục và thay vào đó là giả vờ trở lại vào ban ngày khi chỉ có bạn, mã của bạn, cái máy và một thư viện đủ nhỏ để hiểu. Và tôi phải nói rằng ngay cả sau tất cả những năm này, Turbo Pascal là một môi trường làm việc dễ chịu — và ngôn ngữ Pascal bây giờ lại hút ít hơn khi tôi có kiến ​​thức và kinh nghiệm để Greenspun thoát khỏi nó! –

+0

Tôi biết ý của bạn là gì - Tôi có những kỷ niệm hạnh phúc khi làm việc trên CP/M - không có thư viện, mọi thứ được viết bằng trình biên tập Z80. Tôi không thể giúp với chìa khóa đột nhập, tôi sợ - kinh nghiệm của tôi luôn là bạn phải nhấn nút reset và sau đó đi sâu vào màn hình (đó là trình gỡ lỗi tích hợp cho bất kỳ người trẻ tuổi nào) tìm hiểu chuyện gì đã xảy ra. –

Trả lời

6

Chỉ thị {U +} sẽ khiến mã được biên dịch kiểm tra sau mỗi câu lệnh cho dù khóa đã được nhấn hay chưa. Nếu vậy, phím tắt sẽ được kiểm tra cho^C; nếu không^C, tổ hợp phím sẽ bị loại bỏ. Trong khi điều này hữu ích cho phép chương trình được hủy bỏ, nó làm chậm mọi thứ xuống và cũng khá khó chịu giết khả năng loại trước. Thật không may, CP/M không cung cấp bất kỳ loại ngắt bàn phím nào (mặc dù một số triển khai CP/M có thể cung cấp một) vì vậy không thực sự có bất kỳ sự thay thế nào tốt hơn. Nó sẽ rất tuyệt nếu Turbo Pascal có một tùy chọn để thực hiện bộ đệm bàn phím của riêng nó, nhưng tôi không biết gì cả.

4

Khi bắt đầu chương trình Turbo Pascal 3 (theo câu lệnh Program) là Trình biên dịch {$U+}. Điều này sẽ cho phép bạn thực hiện CTRL + C. Luôn luôn sử dụng điều này chỉ khi bạn đang gỡ lỗi chương trình của bạn vì nó làm chậm tốc độ thực thi của chương trình của bạn. Nếu nó chạy ổn, loại bỏ nó và sau đó biên dịch chương trình của bạn.

Thông thường trong Turbo Pascal 3 trình biên dịch có một bộ chỉ thị trình biên dịch mặc định. "U - Ngắt người dùng" thường bị tắt theo mặc định.

Điều khác tôi tìm thấy trong chương trình Turbo Pascal của tôi gần đây là tôi đã sử dụng nó trong khi gỡ lỗi chương trình của mình và vì lý do nào đó nó không hoạt động. Bạn không chắc chắn những gì đang xảy ra ở đó và thấy rằng tôi thực sự phải giữ kết hợp này để có được chương trình thoát. Không chắc chắn nếu nó có một cái gì đó để làm với tốc độ thực hiện của chương trình hoặc nếu nó đã được sử dụng một vòng lặp lồng nhau dẫn đến điều này xảy ra.

Các vấn đề liên quan