2010-02-24 33 views
5

Tôi muốn tìm hiểu tất cả các chi tiết cao cấp của lập trình ở mức độ thấp vì vậy tôi muốn để có thể cần cuốn sách & trang web gợi ý cho tiến trình ở mức độ thấp

  • Tìm hiểu tiên tiến c/C++
  • Tối ưu hóa mã của tôi có và không có lắp ráp nội tuyến
  • hiểu được bên trong của một exe, dll, chủ đề, quá trình
  • Effeciently tận dụng các công nghệ như SSE, 3DNow, MMX
  • gỡ lỗi & thực thi tháo rời/thư viện và hiểu những gì đang xảy ra bên trong
  • Sự khác biệt/tính năng của các nền tảng/nền tảng khác nhau như x86, MIPS, ARM, PowerPC
  • Mục tiêu đầu tiên của tôi là hệ thống dựa trên Windows x86. Sau đó, đến các nền tảng dựa trên Linux. Và các hệ thống nhúng tuân theo. Bất kỳ sách, trang web, hướng dẫn, diễn đàn, cộng đồng nào cung cấp cho tôi những gì tôi đang tìm TRỰC TIẾP đều tốt.
    Cảm ơn ..

    +0

    Tại sao bạn lại cụ thể như vậy? Có một vấn đề cụ thể tên miền bạn có trong tâm trí? –

    +0

    không, chỉ cần nhiệt tình – Taz

    +0

    đăng ký để truy cập sách trực tuyến: http://www.pearsonhighered.com/educator/course/C-Intermediate-Advanced-Programming/91054902.page – lsalamon

    Trả lời

    1

    Điều bạn đang yêu cầu không thể tìm thấy trong một cuốn sách. Phần lớn những gì bạn đã đề cập được tìm thấy nhiều nhất trong Hướng dẫn sử dụng hoặc Thông số chức năng cho các bộ vi xử lý khác nhau. Tôi khuyên bạn nên bắt đầu với một sự hiểu biết về cốt lõi x86 vòm và làm việc từ đó. Một trong những hướng dẫn sử dụng Intel 386 hoặc 486 cũ có thể là một khởi đầu tốt.

    Tôi biết không có trang web nào cho loại thông tin này.

    0

    hơi quá nhiều, bạn muốn tìm hiểu. :)

    tôi khuyên bạn nên bắt đầu với kiến ​​trúc lõi ARM v4 cơ bản. nó đủ đơn giản để hiểu. sau đó chuyển sang 8086, sau đó xây dựng lên các phiên bản sau của ARM và x86. ARM thuộc loại RISC. và x86 của loại CISC. bạn không bao giờ có thể tìm hiểu tất cả các bộ vi xử lý. (như bạn sẽ không bao giờ có thể học tất cả các ngôn ngữ lập trình) nhưng có kiến ​​thức về 1 hoặc 2 có thể cho phép nắm bắt bất kỳ ngôn ngữ nào khác mà bạn sẽ gặp phải. không có gì nhiều Object định hướng về lập trình cấp thấp. vì vậy nó không quan trọng nếu bạn sử dụng C++ hoặc c. tải mô phỏng hệ thống đầy đủ như gxemul hoặc qemu. cố gắng thực hiện một chương trình lắp ráp hello world - (mà không sử dụng các thư viện thời gian chạy bộ xử lý, - bạn muốn nó cứng, phải không?) người khác có thể có thể hướng dẫn bạn đối với SSE, MMX, vv

    kiểm tra tâm thông tin với. arm.com cho ngôn ngữ lắp ráp ARM và thông số kiến ​​trúc.

    1

    Một vài khuyến nghị từ các mục yêu thích cá nhân của tôi để giúp bạn bắt đầu:

    • “Effective C++: 55 cách cụ thể để cải thiện chương trình và thiết kế (3rd Edition) của bạn” - Scott Meyers

    • "Bên trong máy" - John Stokes

    • "Sự hài lòng của hacker" - Henry S.Warren

    • “Phần mềm tối ưu hóa Cookbook” - Richard Gerber

    • “Manual Intel® 64 và IA-32 Kiến trúc phát triển phần mềm của, Tập 2A: Instruction Set tham khảo, AM” (253.666-021)

    • “Intel® 64 và Hướng dẫn sử dụng IA-32 Kiến trúc phát triển phần mềm của, Tập 2B: Instruction Set tham khảo, NZ” (253667-021)

    0

    tôi luôn tìm thấy Computer Systems: A Programmer mỗi spective (http://www.amazon.com/Computer-Systems-Programmers-Randal-Bryant/dp/013034074X) là một cuốn sách rất hay. Nó có một lượng thông tin lớn về Kiến trúc máy tính và nó đã dạy tôi về quản lý bộ nhớ, biên dịch và liên kết (cũng như cách gỡ lỗi liên kết), tối ưu hóa, mã đối tượng có thể định vị lại và một số hạng mục kiến ​​trúc cấp thấp hơn như cách đi về nghiên cứu khoa học máy tính từ mức độ thấp (ví dụ như nội bộ của bộ vi xử lý như thế nào). Có rất nhiều bài tập tốt, từ các ví dụ tối ưu hóa để thực hiện tràn bộ đệm. Nó thảo luận về cách viết mã lắp ráp nội tuyến (và làm cho nó hoạt động). Thậm chí còn có một phần viết mã cho một bộ xử lý hư cấu (Y86).

    Tuy nhiên, một lưu ý là nó có xu hướng tập trung nhiều vào dây chuyền xử lý Intel (theo ý kiến ​​của tôi). Nếu bạn muốn một cái gì đó hơn một chút dọc theo dòng làm việc với nói dòng ARM, sau đó bạn có thể sẽ muốn có những khuyến nghị từ những người khác ở trên.

    1

    Có thể đã đến lúc bạn nhận được tài khoản trên http://my.safaribooksonline.com/, rút ​​phích cắm điện thoại trong vài tuần, tải tủ lạnh lên với Jolt và Funyun, nói lời tạm biệt với gia đình và bạn bè của bạn, và sau đó đọc nhiều sách như bạn có thể. Họ có một thư viện khá đáng kể trên đó bao gồm hầu hết các chủ đề mà bạn đang tìm kiếm.

    Các vấn đề liên quan