Assembly là dạng ngữ điệu lập trình bậc cao, nó là dạng ngôn từ theo kiểu mẫu gợi nhớ (Mnemonic), tuyệt dạng kí hiệu, của ngữ điệu máy. Assembly giúp rất nhiều người nhìn được rõ hơn mối quan hệ giữa các thành phần chức năng bên trong máy tính với hệ điều hành.
Bạn đang xem: Ngôn ngữ asm là gì
Có thể khẳng định, bài toán tiếp xúc này sẽ giúp chúng ta nắm vững phong cách xây dựng máy tính, tổ chức triển khai hoạt động phía bên trong máy tính với hệ điều hành.




Ngôn ngữ lập trình Assembly là gì, có tác dụng gì, bao gồm nên học Assembly không?
Những người cần xây dựng phần cứng, mạch năng lượng điện tử, các chip vi xử lý.
Những người lập trình compiler, hệ điều hành. (Trong đó gồm anh Chris Lattner, tác giả của LLVM với Swift nhưng mình rất mếm mộ vì anh rất trẻ – SN 1978)
Hacker siêng nghiệpReverse Engineer: nếu dịch là kỹ sư hòn đảo thì không hay và cũng ko đầy đủ ý. RE là các kỹ sư siêng phân tích, mổ xẻ các chương trình để làm rõ chi tiết phía bên trong nó cố gắng nào, RE thường ứng dụng trong an ninh: phát hiện nay mã độc, reviews thuật toán mã hoá … với các lĩnh vực khác gồm liên quan.
Một số công dụng khác của ASMCó thể dùng debug chương trình mà không yêu cầu source code.
Có thể dùng để tối ưu hoá chương trình: một trong những dân code ASM bài bản dùng C để code với dịch ra ASM rồi edit lại cho phù hợp với bản vẽ xây dựng và các chỉ thị riêng rẽ và buổi tối ưu của nhà sản xuất chip. Nguyên nhân là những compiler chỉ dịch ra ASM phổ biến nhất cho các dòng chip.
Một số tài liệu liên quan tới ASM
Mình xin chia sẻ lại một vài tài liệu mà trong thời gian qua mình tất cả được, nhằm ai đó tất cả đang tìm hiểu ASM có thể tham khảo qua:
Ebook về Assembly
Introduction khổng lồ 64 Bit Assembly Programming for Linux: Quyển này tinh gọn, cực kỳ hay. Third edition có cho cả MacOS. Phiên bạn dạng này chỉ có cho Linux.
Xem thêm: Cách Tải Game Vua Trò Chơi Yugi Oh, Tải Game Vua Trò Chơi Yugi Oh
Professional Assembly Language: Quyển này tác giả nói cực kỳ sâu về cơ chế, toàn bộ các thông số register, cơ chế quản lý và vận hành phần cứng … tiếc nuối là người sáng tác viết cho phong cách thiết kế IA-32 và phần code ASM cũng chỉ đến Linux x86-64 thôi.
Hacking: The Art of Exploitation: giành cho ai ưa thích hack, cuốn này nói vô cùng sâu về chuyên môn hacking nhất là sử dụng ASM nhằm can thiệp hệ thống.
Practical Reverse Engineering: x86, x64, ARM, Windows Kernel, Reversing Tools, and Obfuscation: Quyển này cho phần lớn ai yêu quý RE.
** Sách giờ Việt bản thân thấy tất cả vài cuốn nhưng mà mở vài ba trang đọc thật sự không hiểu biết gì !!!
Bài viết nâng cao về Assembly
Assembly “hello, world” for OS X: bài này viết ASM với assembler NASM. NASM bên trên MacOS ko tất cả sẵn, phải cài thêm thông qua brew.
x86 Assembly Guide: bài bác này bản thân hay dùng làm tra cứu nhanh những chỉ thị và thanh ghi (vì óc cá vàng chưa thể ghi nhớ nổi
)
OS X Assembler Reference: Guide về Assembler mang đến OS X của Apple, mình cần sử dụng doc này nhằm convert code bên Linux qua. Tính năng này thật sự không hỗ trợ mình nhiều, đa phần coi phần Data Segment cùng memory padding để áp dụng thanh ghi EAX cho bao gồm xác. Còn nếu như không chương trình sẽ chạy ra lỗi bus error.
Mặc dù tạm dừng khá nhanh chóng với việc học ASM nhưng tôi cũng hài lòng với công dụng đạt được. Bản thân thu được một mớ kỹ năng và kiến thức kha hơi về CPU, cơ bản về việc những process cấp phép bộ nhớ.
Và quan trọng là bây giờ khi cái screen debug vào XCode hiện lên 1 mớ ASM mình rất có thể hiểu được phần nào chứ không hề coi nó như trang bị ngôn ngữ thiên hà nữa.