Tham khảo tài liệu 'giới thiệu hợp ngữ assembler very good phần 7', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | Kiếm tra INDEC Chúng ta có thể kiểm trá INDEC bằng cách viết một chương trình sử dụng INDEC cho việc nhập và OUTDEC cho việc xuất. Chương trình Nguồn PGM9 TITLE PGM9-4 DECIMAL I O . MODEL SMALL .STACK .CODE MAIN PROC Nhập một số CALL INDEC số trong AX PUSH AX . Cất số vào ngăn xếp Chuyển con trỏ sang dòng mới MOV AH 2 MOV DL ODH INT 21H MOV DL ŨAH INT 21H Đưa ra số đã nhập POP AX Phục hồi số đã nhập CALL OUTDEC Trở về DOS MOV AX 4CH ĨNT 21H MAIN ENDP INCLUDE A PGM9_1 . ASM Bao gồm cả thủ tục INDEC INCLUDE. A Bao gồm cẳ thủ tục OUTDEC END MAIN Ví dụ thực hiện OPGM9-4 21345 213450verflow 230 Hiện tượng tràn Thủ tục INDEC có thể quản lý việc vào có những ký tự không hợp lệ nhưng nó không thể quản lý việc đưa ra giá trị nằm ngoài khoảng -32768 đến 32767. Chúng ta gọi hiện tượng tràn khi nhập. Hiện tượng tràn có thể xảy ra ở 2 chỗ trong thủ tục INDEC Khi Tổng được nhân với 10 Khi Giá trị mới được cộng vào tổng. - Để lấy ví dụ cho trường hợp tràn đầu tiên người sử dụng có thể đánh vào 99999 Hiện tượng tràn sẽ xuất hiện khi Tổng 9999 được nhân với 10 Để lây ví dụ cho trường hợp tràn thứ 2 người sử dụng cổ thể đánh vào khi đó lúc Tổng 32760 hiện tượng tràn xuất hiện khi 9 được cộng vào Tổng. Thuật toán có thể thay đổi để kiểm tra tràn như sau Thuật toán nhập số thập phân versiọn 3 In ra dấu hỏi chấm Tổng 0 Ầm false Đọc 1 ký tự CASE ký tự OF Âm TRUE Đọc ký tự END-CÀSE REPEAT IF ký tự không nằm trong khoảng giữa 0 và 9 THEN Quay lại từ đầu ELSE Đổi thành giá trị số Tổng 10 Tổng IF overflow . - THEN Quay lại từ đầụ ELSE Tổng Tổng -í- Giá trị IF overflow THEN Quay lại từ đầu 231 END_IF END_IF END-IF Đọc ký tự UNTIL Ký tự CR IF Âm TRUE . 4 THEN j Tổng Tổng END__IF J á Việc lập chương trình từ thuật toán này chúng tôi giành cho các bạn như là một J bài tập- i . I 3 í .