کتاب Computer Architecture: From the Stone Age to the Quantum Age (معماری کامپیوتر: از عصر حجر تا عصر کوانتوم) یک کاوش عمیق در اصول و طرحهایی است که سختافزار کامپیوتر را در طول اعصار شکل داده است، از دستگاههای شمارش مانند چرتکه، موتور تفاوت Babbage، GPUهای مدرن و مرزهای محاسبات کوانتومی.
در ادامه مقدمهای از را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Computer Architecture:
این کتاب به بررسی زمینه معماری کامپیوتر میپردازد و اصول اساسی و طراحی سختافزار کامپیوتر را بررسی میکند. این حوزه طیف وسیعی از قطعات و فناوریهای سختافزاری را در سطوح مختلف، از سیلیکون و ترانزیستورهای پایه، از گیتهای منطقی، ماشینهای محاسبه ساده، و زبانهای اسمبلی گرفته تا پردازندهها و حافظههای پیچیده را در بر میگیرد.
این کتاب همچنین تاریخچه محاسبات را از مکانیسمهای یونان باستان گرفته تا ماشینهای رمز شکن جنگ جهانی دوم، کنسولهای بازی ۸ بیتی یکپارچهسازی با سیستمعامل، پردازندههای معاصر و پردازندههای گرافیکی با یادگیری عمیق، دستگاههای تعبیهشده اینترنتاشیا و سرورهای ابری و حتی ردیابی میکند. معماریهای آینده، مانند کامپیوترهای کوانتومی. معماری کامپیوتر روندهای مرتبط با این ماشینها و اجزای مختلف را شناسایی میکند. همانطور که خواهید دید، برخی از اصول محاسباتی بسیار قدیمیتر از آن چیزی هستند که فکر میکنید.
کتاب Computer Architecture برای چه افرادی است؟
معماری کامپیوتر یکی از معدود موضوعاتی است که دانشمندان کامپیوتر تمام عیار را از برنامهنویسان صرف جدا میکند. اگر دانشجوی کارشناسی علوم کامپیوتر هستید، احتمالاً برای مدرک شما لازم است.
اگر یک برنامهنویس یا هکر خودآموخته هستید، ممکن است موضوعی باشد که بخواهید بیشتر در مورد آن بیاموزید، هم برای اینکه برنامههای شما هماهنگتر با سختافزار شما اجرا شود و هم به عنوان نشانی از حرفهای بودن که بسیاری از کارفرمایان به دنبال آن هستند.
کتاب Computer Architecture فرض میکند که شما برنامهنویسی، ریاضی و فیزیک پایه دبیرستان را میدانید، اما در غیر این صورت مستقل است. این میتواند به عنوان یک کتاب درسی برای الزامات سختافزاری مدرک کارشناسی معماری کامپیوتر یا به عنوان اولین منبع برای زبانآموزان مستقل باشد.
بیشتر بخوانید: کتاب Foundations of Computing
نحوه استفاده از کتاب Computer Architecture
معماری اغلب یک دوره اجباری یا یک نیاز حرفهای است و بسیاری از افرادی که از این موضوع لذت نمیبرند هنوز باید آن را یاد بگیرند – باید بدانم، من قبلاً یکی از آنها بودم! برای چنین دانشآموزانی، من چند قاشق شکر اضافه کردهام تا به کاهش دارو کمک کنم: موضوع را به موضوعات دیگری مرتبط میکنم که ممکن است به آنها علاقه بیشتری داشته باشید. اگر از سختافزار متنفرید، اما مانند موسیقی، رباتیک، هوش مصنوعی، تاریخ یا حتی ساختمانهای پیشرفته لگو، این کتاب ممکن است برای شما مناسب باشد.
حتی ممکن است از طریق یکی از این ارتباطات عاشق معماری شوید. یا، اگر فقط نیاز به قبولی در یک امتحان دارید، شاید این کتاب به شما کمک کند با درد کمتری نسبت به سایرین آن را پشت سر بگذارید.
اگرچه آینده معماری کامپیوتر جدید و هیجانانگیز است، اما دانستن گذشته مهم است، بنابراین کتاب Computer Architecture یک رویکرد تاریخی گسترده دارد. کامپیوترها به طور کلی در طول زمان پیچیدهتر شدهاند. با ردیابی تاریخ آنها، ما میتوانیم به تدریج این پیچیدگی را ایجاد کنیم.
به عنوان مثال، با یادگیری برنامهنویسی بر روی یک موتور تحلیلی ویکتوریا، استیمپانک، ساختارهای اساسی یک CPU را یاد خواهید گرفت – همانطور که امروزه هنوز مورد استفاده قرار میگیرد.
من به شما نشان خواهم داد که چگونه قطعات مکانیکی متحرک آن را به معادلهای مبتنی بر گیت منطقی تبدیل کنید و چگونه نسخهای از Manchester Baby را که یکی از اولین کامپیوترهای الکترونیکی است، بسازید و برنامهریزی کنید.
سپس ماشینهای الکترونیکی را به رایانههای بازی قدیمی ۸ بیتی و ۱۶ بیتی گسترش میدهید و برنامهنویسی Commodore ۶۴ و Amiga را یاد میگیرید. در مرحله بعد، رایانههای رومیزی و هوشمند مدرن، از جمله معماریهای x۸۶ و RISC-V را قبل از رفتن به ابر رایانهها و ابر رایانهها معرفی میکنم. در نهایت، ما بهایدههایی برای فناوریهای آینده نگاه خواهیم کرد.
ما در کتاب Computer Architecture نمونههای بسیاری از سیستمها را مطالعه خواهیم کرد، اما این سیستمها عمدتاً بهجای اینکه راهنمایی برای ویژگیهای محصولات مدرن باشند، به منظور نشان دادن مفاهیم کلی هستند.
وقتی خواندن کتاب را تمام کردید، باید درک کافی داشته باشید، به عنوان مثال، بتوانید یک میکرو ۸ بیتی را روی تخته نان بورد بسازید، بازیهای ۸ بیتی را به صورت مونتاژی بنویسید، برنامههای اساسی تعبیه شده و موازی بنویسید، قوس تاریخ، و برخی از آینده معماری را پیشبینی کنید. همچنین پس از آن باید برای مطالعه و کار آینده آماده مطالعه کتب مرجع متعارف باشید.
اگر سعی کنید هر فصل را بررسی کنید، بیشترین بهره را از کتاب Computer Architecture خواهید برد – فقط آنها را به صورت اسمی در نظر نگیرید. به عنوان مثال، CPUهای مقیاس بزرگ را میتوان در LogiSim طراحی کرد، روی آرایههای دروازهای قابل برنامهریزی میدانی ارزان (FPGA) سوزاند و به صورت واقعی اجرا کرد. به عنوان مثال دیگر، میتوانید از تمام معماریها و اسمبلرهای ارائه شده در این کتاب برای نوشتن بازیهای ویدیویی خود استفاده کنید.
فایلهای LogiSim و قطعههای کد اسمبلی که در کتاب Computer Architecture مورد بحث قرار گرفتهاند، همگی برای دانلود در دسترس هستند. برای پیوند به صفحه وب کتاب، https://nostarch.com/ computerarchitecture مراجعه کنید. همچنین شما را تشویق میکنم که با استفاده از کتابخانه، ویکیپدیا، و وب گستردهتر، و یافتن مطالب بیشتر فهرستشده در پایان هر فصل کتاب Computer Architecture، درباره موضوعات کتاب اطلاعات بیشتری کسب کنید.
سپس منابع جالبی را که به آنها ارجاع میدهند نیز بیابید. به همین ترتیب، سعی کنید از ابزارهای ارائه شده در تمرینهای پایان فصل کتاب Computer Architecture به روشهای جدید استفاده کنید و بهدنبال سایرایدههای پروژه جالب آنلاین باشید.
برای مثال، بسیاری از یوتیوببرها با سفارش ۶۵۰۲، تراشههای رم و سیمها از eBay، رایانههای ساده ۸ بیتی ساختهاند. معماری یک موضوع بصری، وبلاگنویسی و یوتیوب پسند است، بنابراین اگر چیزی جالب ایجاد میکنید، حتماً نتایج را به اشتراک بگذارید.
یک راه خوب برای شروع مطالعه معماری این است که مجموعهای از پیچ گوشتیهای کوچک بخرید و ضمانت محصولات خود را با باز کردن رایانه، لپ تاپ و تلفن هوشمند خود و همچنین برخی از دستگاههای کمتر آشکار مانند روتر، تلویزیون و لباسشویی خود لغو کنید.
دستگاه. در بخش بعدی، نمونههایی از چیزهایی که ممکن است در داخل این دستگاهها پیدا کنید و نحوه حرکت در اطراف آنها را مشاهده خواهیم کرد.
بررسی اجمالی کتاب Computer Architecture
بخش اول کتاب Computer Architecture مفاهیم اساسی زیربنای تمام معماریها را معرفی میکند.
فصل ۱: معماریهای تاریخی تکامل تاریخی محاسبات را توصیف میکند، نه فقط برای آموزش خود تاریخ، بلکه به این دلیل که بسیاری از مفاهیم در طول زمان تکرار میشوند و بر پیچیدگی آن افزوده میشوند. این به شما این امکان را میدهد که ابتدا با درک اجداد سادهتر آنها، در مورد سیستمهای پیچیده مدرن بیاموزید.
فصل ۲: نمایش دادهها در مورد نحوه نمایش دادهها با استفاده از طرحهای کدگذاری باینری بحث میکند که بعداً با استفاده از منطق دیجیتال پیادهسازی خواهد شد.
فصل ۳: معماری اساسی مبتنی بر CPU به بررسی چیستی CPU، اجزای فرعی اصلی آن و رابط کاربری کد ماشین آن میپردازد. هنگامی که مفاهیم قسمت اول را درک کردید، ساختارهای اصلی معماری کامپیوتر اساساً سلسله مراتبی هستند.
قسمت دوم کتاب Computer Architecture به این سلسله مراتب میرسد.
فصل ۴: سوئیچها سوئیچها را معرفی میکند، بلوکهای اصلی سازنده رایانههای مدرن.
فصل ۵: منطق دیجیتال دروازههای منطقی را از این سوئیچها میسازد.
فصل ۶: ماشینهای ساده این گیتهای منطقی را در ماشینهای ساده ترکیب میکند.
فصل ۷: طراحی CPU دیجیتال از این ماشینهای ساده برای ساخت اجزای یک CPU و در نهایت یک CPU کامل اما در مقیاس کوچک استفاده میکند.
فصل ۸: طراحی پیشرفته CPU ویژگیهای پیشرفتهتر و مدرن CPU مانند خط لوله و اجرای خارج از نظم را معرفی میکند.
فصل ۹: ورودی/خروجی ورودی/خروجی (I/O) را اضافه میکند و یک مرحله دیگر از یک CPU به یک کامپیوتر کامل میدهد.
فصل ۱۰: حافظه به معرفی حافظه، آخرین نیاز برای یک کامپیوتر کامل میپردازد.
بخش سوم کتاب Computer Architecture شامل مثالها و کاربردهای پیچیدهای است که تقریباً با ترتیب تاریخی آنها منطبق است. این مثالها برای تقویت دانش شما در مورد ساختارهای مورد مطالعه در قسمت دوم در نظر گرفته شده است.
فصل ۱۱: معماریهای یکپارچهسازی با سیستمعامل با کامپیوترهای یکپارچهسازی با سیستمعامل نسبتاً ساده و کامل از دوران ۸ بیتی و ۱۶ بیتی شروع میشود، از جمله به شما نشان میدهد که چگونه بازیهای ویدئویی یکپارچهسازی با سیستمعامل را به زبانهای اسمبلی خود بنویسید.
فصل ۱۲: معماریهای جاسازی شده نشان میدهد که چگونه دستگاههای مدرن و کم مصرف اینترنتاشیا ساختار، قابلیتها و سبکهای برنامهنویسی مشابهی با دستگاههای قدیمی دارند.
فصل ۱۳: معماریهای رومیزی مجموعه دستورالعملهای پیچیده و تاریخچه معماری x۸۶ را مطالعه میکند، که احتمالاً مبنایی برای رایانه رومیزی اصلی شما است. این به شما امکان میدهد رایانه خود را به صورت مونتاژ، روی \”فلز لخت\” برنامهریزی کنید (یعنی بدون اینکه سیستم عامل مانعی برای شما ایجاد کند). همچنین استانداردهای رایج ورودی/خروجی PC و تجهیزات جانبی را که احتمالاً دسکتاپ شما شامل میشود، بررسی خواهید کرد.
فصل ۱۴: معماریهای هوشمند به انبوهی از دستگاههای هوشمند کوچکتر که جایگزین رایانههای رومیزی میشوند، میپردازد. اینها با معماری RISC مانند RISC-V، همراه با برنامهنویسی اسمبلی و ابزار طراحی منطق دیجیتال مشخص میشوند.
فصل ۱۵: معماریهای موازی در مورد معماریهای موازی بحث میکند، که با تلاش پردازندهها برای اجرای سریعتر، رایجتر شدهاند.
فصل ۱۶: معماریهای آینده با حدس و گمان در مورد معماریهای احتمالی آینده، از جمله محاسبات عصبی، DNA و کوانتومی به پایان میرسد.
سرفصلهای کتاب Computer Architecture:
- Cover
- Title Page
- Copyright
- About the Author
- About the Technical Reviewer
- Brief Contents
- Contents in Detail
- Introduction
- Who Is This Book For?
- Why Computer Architecture?
- Changes in the Field
- How to Use This Book
- Inside Common Devices
- Book Overview
- Exercises
- Further Reading
- Part I: Fundamental Concepts
- Chapter 1: Historical Architectures
- Chapter 2: Data Representation
- Chapter 3: Basic CPU-Based Architecture
- Part II: The Electronic Hierarchy
- Chapter 4: Switches
- Chapter 5: Digital Logic
- Chapter 6: Simple Machines
- Chapter 7: Digital CPU Design
- Chapter 8: Advanced CPU Design
- Chapter 9: Input/Output
- Chapter 10: Memory
- Part III: Example Architectures
- Chapter 11: Retro Architectures
- Chapter 12: Embedded Architectures
- Chapter 13: Desktop Architectures
- Chapter 14: Smart Architectures
- Chapter 15: Parallel Architectures
- Chapter 16: Future Architectures
- Appendix: Operating System Support
- Acknowledgments
- Figure Credits
- Index
- Back Cover
جهت دانلود کتاب Computer Architecture میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.