CIL đơn giản hơn nhiều so với công cụ lắp ráp thông thường. Đối với một phần lớn điều này là do thực tế là máy ảo là ngăn xếp dựa, vì vậy tất cả mọi thứ đi vào ngăn xếp và không có đăng ký để theo dõi.
Cũng không có tính toán bù trừ, không có thao tác bộ nhớ trực tiếp, cuộc gọi phương thức được liệt kê bằng tên .NET của chúng và v.v. Tôi đoán rằng nếu bạn có một ít kinh nghiệm với bất kỳ loại ngôn ngữ lắp ráp nào khác, có thể bạn sẽ có thể nắm bắt được ý chính của mã CIL khá nhanh chóng.
Cá nhân tôi thấy rất hữu ích khi có thể kích hoạt ILDasm hoặc Reflector để xem những gì IL trình biên dịch C# thực sự tạo ra cho một số đoạn mã. Đối với nhiều tính năng mới hơn như các đại biểu ẩn danh/lambdas, các biến bị bắt, các trình vòng lặp và các kiểm tra tương tự như IL có thể rất hữu ích.
Những người khác đã đề cập đến sách hay và tôi sẽ chỉ bỏ phiếu của tôi cho Chuyên gia .NET 2.0 IL assembler bởi Serge Lidin. Nó có tất cả các chi tiết đẫm máu. Nếu bạn muốn điều gì đó gần gũi hơn với C# CLR của Jeffrey Ricther qua C# thật tuyệt vời. Cuốn sách của Jon Skeet rất tuyệt, nhưng nó không thực sự bao gồm CIL.
Nguồn
2009-02-11 20:00:34
trùng lặp chính xác của http://stackoverflow.com/questions/44940/learning-cil – U62
Không có câu hỏi này chủ yếu là về lợi thế của việc học nó. –
gần giống với http://stackoverflow.com/questions/203019/reasons-to-learn-msil –