Ngôn ngữ asm là gì

     

Assembly là dạng ngôn ngữ lập trình bậc cao, nó là dạng ngôn từ theo kiểu mẫu mã gợi lưu giữ (Mnemonic), xuất xắc dạng kí hiệu, của ngôn từ máy. Assembly giúp đông đảo người nhìn thấy được rõ hơn quan hệ giữa những thành phần chức năng bên trong máy tính và 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 đang giúp các bạn nắm vững phong cách xây dựng máy tính, tổ chức hoạt động bên phía trong máy tính cùng hệ điều hành.


*
*
*
*

Ngôn ngữ lập trình sẵn Assembly là gì, có tác dụng gì, bao gồm nên học tập Assembly không?


Những bạn cần lập trình phần cứng, mạch năng lượng điện tử, các chip vi xử lý.

Những fan lập trình compiler, hệ điều hành. (Trong đó bao gồm anh Chris Lattner, người sáng tác của LLVM cùng Swift nhưng mình rất yêu mếm vì anh siêu trẻ – SN 1978)

Hacker chăm nghiệp

Reverse Engineer: ví như dịch là kỹ sư đảo thì ko hay cùng cũng ko đủ ý. RE là đa số kỹ sư chuyên phân tích, phẫu thuật xẻ các chương trình để làm rõ chi tiết bên trong nó cố nào, RE thường vận dụng trong an ninh: phát hiện mã độc, đánh giá thuật toán mã hoá … và các nghành khác có liên quan.

Một số ích lợi khác của ASM

Có thể cần sử dụng debug công tác mà không buộc phải source code.

Có thể dùng để tối ưu hoá chương trình: một trong những dân code ASM chuyên nghiệp dùng C để code và dịch ra ASM rồi edit lại cho phù hợp với kiến trúc và các chỉ thị riêng rẽ và buổi tối ưu của phòng sản xuất chip. Tại sao là các compiler chỉ dịch ra ASM phổ biến nhất cho những dòng chip.

Một số tài liệu tương quan tới ASM

Mình xin chia sẻ lại một số trong những tài liệu nhưng mà trong thời hạn qua mình có được, nhằm ai đó tất cả đang mày mò ASM có thể tham khảo qua:


Ebook về Assembly 

Introduction lớn 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 này chỉ tất cả cho Linux.

Xem thêm: Khổ Qua Rừng Có Tác Dụng Gì, Cách Dùng Điều Trị Tiểu Đường, Huyết Áp

Professional Assembly Language: Quyển này người sáng tác nói khôn xiết sâu về cơ chế, toàn bộ các thông số register, cơ chế vận hành phần cứng … nuối tiếc là người sáng tác viết cho phong cách xây dựng IA-32 với phần code ASM cũng chỉ cho Linux x86-64 thôi.

Hacking: The Art of Exploitation: dành riêng cho ai ham mê hack, cuốn này nói khôn xiết sâu về nghệ thuật 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, và Obfuscation: Quyển này cho số đông ai hâm mộ RE.

** Sách giờ Việt bản thân thấy tất cả vài cuốn cơ mà mở vài ba trang hiểu thật sự thiếu hiểu biết nhiều gì !!!

Bài viết chuyên sâu về Assembly 


Assembly “hello, world” for OS X: bài xích này viết ASM cùng với assembler NASM. NASM bên trên MacOS ko tất cả sẵn, đề xuất cài thêm trải qua brew.

x86 Assembly Guide: bài bác này mình hay dùng để tra cứu giúp nhanh các chỉ thị và thanh ghi (vì óc cá vàng chưa thể lưu giữ nổi
)

OS X Assembler Reference: Guide về Assembler mang đến OS X của Apple, mình dùng doc này để convert code mặt Linux qua. điều này thật sự không hỗ trợ mình nhiều, đa số coi phần Data Segment cùng memory padding để sử dụng thanh ghi EAX cho thiết yếu xác. Nếu không chương trình sẽ chạy ra lỗi bus error.

Mặc dù tạm dừng khá sớm với việc học ASM nhưng mình cũng hài lòng với kết quả đạt được. Bản thân thu được một mớ kỹ năng và kiến thức kha tương đối về CPU, cơ bản về việc những process cấp phép bộ nhớ.

Xem thêm: Cách Kho Cá Nục Mềm Xương Ngon Như Tưởng Tượng, Ăn Mãi Không Thấy Chán

Và đặc biệt là hiện nay khi cái screen debug trong 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ư thiết bị ngôn ngữ ngoài hành tinh nữa.