کتاب صوتی برنامهنویسی برای کامپیوترهای دیجیتال: کاوشی در قلب ماشین
برنامهنویسی برای کامپیوترهای دیجیتال: کاوشی در قلب ماشین | دروازهای به دنیای برنامهنویسی سطح پایین برنامهنویسی برای کامپیوترهای دیجیتال: کاوشی در قلب ماشین آیا همیشه کنجکاو بودهاید که کامپیوترها ...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره برنامهنویسی برای کامپیوترهای دیجیتال: کاوشی در قلب ماشین
موضوع کلی: مبانی برنامهنویسی و علوم کامپیوتر
موضوع میانی: برنامهنویسی سطح پایین و معماری سختافزار
📋 سرفصلهای دوره
- 1. مقدمهای بر کامپیوترهای دیجیتال
- 2. تاریخچه ماشینهای محاسبه: از پاسکال تا فون نویمان
- 3. مفهوم برنامه و الگوریتم
- 4. معماری فون نویمان: قلب کامپیوتر مدرن
- 5. واحد پردازش مرکزی (CPU): مغز عملیات
- 6. حافظه اصلی (Main Memory): انبار دادهها و دستورالعملها
- 7. واحدهای ورودی و خروجی (I/O): پل ارتباطی با جهان
- 8. چرخه پردازش دستورالعمل: Fetch-Decode-Execute
- 9. زبان ماشین: زبان مادری کامپیوتر
- 10. از زبان ماشین تا زبانهای سطح بالا: یک نمای کلی
- 11. سیستم اعداد دودویی (باینری): مبنای محاسبات دیجیتال
- 12. نمایش اعداد صحیح بدون علامت
- 13. نمایش اعداد صحیح علامتدار: مکمل دو
- 14. سیستمهای اعداد هشت (اکتال) و شانزده (هگزادسیمال)
- 15. عملیات حسابی باینری: جمع و تفریق
- 16. عملیات منطقی بیتی: AND, OR, NOT, XOR
- 17. شیفتهای منطقی و حسابی
- 18. نمایش اعداد ممیز شناور
- 19. کدهای کاراکتری: از ASCII تا یونیکد
- 20. مفهوم کلمه (Word) و بایت (Byte) در حافظه
- 21. آناتومی دقیق CPU: واحد محاسبه و منطق (ALU)
- 22. واحد کنترل (Control Unit) و نقش آن
- 23. ثباتها (Registers): حافظه فوق سریع پردازنده
- 24. ثباتهای خاص: شمارنده برنامه (PC) و اشارهگر پشته (SP)
- 25. گذرگاهها (Buses): شاهراههای انتقال داده
- 26. سیگنال ساعت (Clock) و همگامسازی عملیات
- 27. ساختار حافظه و آدرسدهی
- 28. حافظه فقط خواندنی (ROM) و حافظه با دسترسی تصادفی (RAM)
- 29. سلسله مراتب حافظه: کش، حافظه اصلی، حافظه جانبی
- 30. ارتباط بین CPU و حافظه
- 31. مجموعه دستورالعمل (Instruction Set Architecture - ISA)
- 32. فرمت دستورالعملها: کد عملیات (Opcode) و عملوندها (Operands)
- 33. دستورالعملهای انتقال داده
- 34. دستورالعملهای حسابی
- 35. دستورالعملهای منطقی
- 36. دستورالعملهای پرش شرطی و غیرشرطی
- 37. دستورالعملهای فراخوانی زیرروال
- 38. دستورالعملهای کار با پشته
- 39. حالتهای مختلف آدرسدهی: فوری، مستقیم، غیرمستقیم
- 40. تحلیل یک برنامه ساده در زبان ماشین
- 41. معرفی زبان اسمبلی: چرا به آن نیاز داریم؟
- 42. نمادهای حافظه (Mnemonics) در برابر کدهای باینری
- 43. ساختار یک برنامه اسمبلی
- 44. اسمبلر (Assembler): مترجم زبان اسمبلی
- 45. دستورات شبه (Pseudo-operations) و دایرکتیوها
- 46. تعریف دادهها و متغیرها در اسمبلی
- 47. برچسبها (Labels) و کنترل جریان برنامه
- 48. پیادهسازی حلقهها در اسمبلی
- 49. پیادهسازی ساختارهای شرطی (if-then-else)
- 50. کار با آرایهها و رشتهها
- 51. عملیات ریاضی پیچیدهتر: ضرب و تقسیم
- 52. ماکروها در اسمبلی: اتوماسیون کدنویسی
- 53. پیوند (Linking) فایلهای اسمبلی مجزا
- 54. اشکالزدایی (Debugging) برنامههای سطح پایین
- 55. مقایسه معماریهای RISC و CISC از دیدگاه اسمبلی
- 56. نقشه حافظه یک فرآیند
- 57. بخش کد (Code Segment)، بخش داده (Data Segment)
- 58. مفهوم پشته (Stack) و کاربردهای آن
- 59. مفهوم هیپ (Heap) و تخصیص حافظه پویا
- 60. اشارهگرها و محاسبات آدرس
- 61. تراز بندی دادهها در حافظه
- 62. Endianness: کوچک-پایان در برابر بزرگ-پایان
- 63. مقدمهای بر حافظه مجازی
- 64. خطای صفحه (Page Fault) چیست؟
- 65. مدیریت حافظه توسط سیستمعامل: یک نمای کلی
- 66. زیرروالها (Subroutines) و توابع (Functions)
- 67. مکانیزم فراخوانی و بازگشت
- 68. پشته فراخوانی (Call Stack) و قاب پشته (Stack Frame)
- 69. قراردادهای فراخوانی (Calling Conventions)
- 70. ارسال پارامترها به توابع: از طریق ثباتها
- 71. ارسال پارامترها به توابع: از طریق پشته
- 72. متغیرهای محلی و ذخیرهسازی آنها
- 73. بازگشت مقدار از توابع
- 74. توابع بازگشتی (Recursive Functions) در سطح ماشین
- 75. کتابخانههای استاندارد و پیوند با آنها
- 76. اصول ورودی/خروجی (I/O)
- 77. دستگاههای ورودی/خروجی متداول
- 78. کنترلرهای دستگاه (Device Controllers)
- 79. ورودی/خروجی با نگاشت حافظه (Memory-Mapped I/O)
- 80. ورودی/خروجی با نگاشت پورت (Port-Mapped I/O)
- 81. ورودی/خروجی برنامهریزی شده (Polling)
- 82. ورودی/خروجی مبتنی بر وقفه (Interrupt-Driven I/O)
- 83. جدول بردار وقفه (Interrupt Vector Table)
- 84. دسترسی مستقیم به حافظه (Direct Memory Access - DMA)
- 85. بافرینگ (Buffering) در عملیات ورودی/خروجی
- 86. پیادهسازی آرایهها در سطح حافظه
- 87. پیادهسازی لیستهای پیوندی
- 88. الگوریتم جستجوی خطی
- 89. الگوریتم جستجوی دودویی
- 90. الگوریتم مرتبسازی حبابی
- 91. الگوریتم مرتبسازی درجی
- 92. جداول درهمسازی (Hash Tables) از دیدگاه حافظه
- 93. دستکاری بیتها برای بهینهسازی
- 94. تولید اعداد شبه تصادفی
- 95. تحلیل پیچیدگی الگوریتمها در سطح دستورالعمل
- 96. کامپایلرها: پل بین زبان سطح بالا و اسمبلی
- 97. لینکرها (Linkers): ترکیب قطعات کد
- 98. لودرها (Loaders): آمادهسازی برنامه برای اجرا
- 99. نقش سیستم عامل در اجرای برنامه
- 100. آینده برنامهنویسی سطح پایین و اهمیت درک ماشین
برای آموختن، همیشه لازم نیست بخوانید
گاهی بهترین فرصت یادگیری زمانی است که در مسیر رفتوآمد هستید، قدم میزنید، استراحت میکنید یا کارهای روزمرهتان را انجام میدهید. محتوای صوتی کمک میکند از این لحظهها برای شنیدن، اندیشیدن و آشنایی با موضوعات تازه بهره ببرید.
◷
یادگیری در دل روزمرگی
از زمان رفتوآمد، پیادهروی یا استراحت برای شنیدن محتوای مفید استفاده کنید؛ بدون آنکه همیشه به کتاب چاپی یا صفحه نمایش نیاز داشته باشید.
◎
تجربهای شنیداری و دلنشین
با روایت صوتی، توضیحات گفتاری و فضای شنیداری هر محتوا همراه شوید و متناسب با سلیقه خود، شیوه تازهای برای دریافت مطالب تجربه کنید.
✦
گسترش دانش و دیدگاه
با موضوعات متنوع آشنا شوید، ایدههای تازه کشف کنید و فرصت بیشتری برای یادگیری مستمر و پرورش کنجکاوی خود بسازید.
♫
همراه با سبک زندگی شما
محتوای صوتی را متناسب با برنامه روزانه خود انتخاب کنید و در زمان مناسب، شنیدن را به بخشی از عادتهای شخصیتان تبدیل کنید.
کتاب صوتی یا پادکست؟
کتاب صوتی
راهی برای همراه شدن با محتوای یک کتاب از طریق شنیدن. بسته به اثر، میتوانید داستانها، آموزشها، مفاهیم تخصصی یا مطالب کاربردی را در قالب روایت و بیان صوتی دنبال کنید.
مناسب برای شنیدن و مرور محتوای کتابها
پادکست آموزشی
فرصتی برای دنبال کردن موضوعات مشخص در قالب گفتوگو، روایت، توضیح آموزشی یا مجموعهای از قسمتهای صوتی؛ مناسب برای کشف ایدهها و آشنایی با دیدگاههای گوناگون.
مناسب برای یادگیری موضوعی و شنیدن دیدگاههای تازه
هر جا که هستید، شنیدن را آغاز کنید
با دستگاه مناسب خود، محتوای صوتی را به آسانی دنبال کنید.
▯
گوشی هوشمند
اندروید و آیفون
▣
تبلت
برای شنیدن و دنبال کردن محتوا
▤
رایانه و لپتاپ
با پخشکننده صوتی سازگار
♫
هدفون و بلندگو
برای شنیدن متناسب با محیط
چطور از تجربه شنیدن بیشتر بهره ببریم؟
✦ زمان مناسبی برای شنیدن انتخاب کنید؛ زمانی که بتوانید با آرامش به محتوا توجه داشته باشید.
✦ برای مطالب آموزشی، نکتههای مهم را یادداشت کنید یا پس از پایان شنیدن، آنها را مرور کنید.
✦ اگر محتوا طولانی است، آن را در چند نوبت دنبال کنید تا فرصت بیشتری برای درک و مرور داشته باشید.
✦ هنگام رانندگی یا انجام کارهای نیازمند تمرکز، ایمنی را در اولویت قرار دهید و از شیوه شنیدنی استفاده کنید که حواس شما را مختل نکند.
هر شنیدن، فرصتی برای کشف است
با کتابهای صوتی و پادکستهای آموزشی، دنیای تازهای از ایدهها، روایتها و آموختنیها را به لحظههای خود اضافه کنید.
express24.ir
امکانات پخش، ادامه شنیدن و دسترسی آفلاین به نوع فایل، دستگاه و نرمافزار مورد استفاده بستگی دارد.
تگها:
algorithmic thinking
Assembly Language
computer fundamentals
Computer Organization
CPU Architecture
Data Structures
Digital Computers
Hardware Architecture
low-level programming
Programming for Digital Computers
برنامهنویسی سطح پایین
علوم کامپیوتر
مبانی برنامهنویسی
معماری سختافزار
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.