Về Inline Assembly

Thảo luận trong 'C/C++' bắt đầu bởi integer, 26 Tháng bảy 2011.

  1. Offline

    integer

    • Tiếu Ngạo Giang Hồ

    • :-?
    Số bài viết:
    1.695
    Đã được thích:
    1.313
    Điểm thành tích:
    900
    Inline Assembly là việc nhúng thẳng mã Assembly (asm) vào mã c/c++.
    ASM là ngôn ngữ nhanh chỉ sau mã máy và có 1 số việc chỉ có nó mới làm được là lý do nó được sử dụng.

    Việc sử dụng các ngắt không cho phép trong môi trường 32 bit nên bạn cần có 1 trình biên dịch hỗ trợ 16 bit như TC hoặc BC bản dos.

    C/C++ hỗ trợ về lập trình nhúng lại được inline asm, đây là 1 điểm mạnh của ngôn ngữ. Tuy nhiên rất ít người học về cái này, nếu bạn đọc qua hay sử dụng rồi thì trình bày chút kiến thức để chúng ta cùng thảo luận.

    exam :
    Mã:
    [COLOR=#000000][COLOR=#FF8000]#include <stdio.h>
    #include <conio.h>
    [/COLOR][COLOR=#0000BB]int main[/COLOR][COLOR=#007700]()
    {
        [/COLOR][COLOR=#0000BB]clrscr[/COLOR][COLOR=#007700]();
        [/COLOR][COLOR=#FF8000]//mã asm hiển thị chữ 'a'
        [/COLOR][COLOR=#0000BB]asm [/COLOR][COLOR=#007700]{
            [/COLOR][COLOR=#0000BB]mov ah[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]2
            mov dl[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]97
            int 21h
        [/COLOR][COLOR=#007700]}
        [/COLOR][COLOR=#0000BB]getch[/COLOR][COLOR=#007700]();
        return [/COLOR][COLOR=#0000BB]0[/COLOR][COLOR=#007700];
    
    }  [/COLOR][/COLOR]
    sunboy thích bài này.

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí