1 टिप्पणियां

 
GN⁺ 2024-04-23
Hacker News राय

Hacker News टिप्पणियों में assembly language सीखने के तरीकों पर दी गई विभिन्न राय का सार इस प्रकार है:

  • ARM assembly की बुनियाद सहज रूप से सीखने के लिए ऑनलाइन गेम "OFRAK Tetris" खेलना मददगार है। इसमें ब्लॉक ARM assembly instructions होते हैं, और खेलते-खेलते आप जल्दी disassembly पढ़ना सीख सकते हैं।
  • सिर्फ x86 instruction reference के साथ भी D compiler के inline assembler syntax का उपयोग करके साधारण expressions compile किए जा सकते हैं, और generated assembly का विश्लेषण करते हुए सीखा जा सकता है.
  • "Computer Architecture: A Quantitative Approach", "Getting Started with LLVM Core Libraries", "The Architecture of Open Source Applications" जैसी किताबें, साथ ही LLVM के official documents, tutorials और references भी उपयोगी हैं.
  • Apple की "Apple Silicon CPU Optimization Guide" या Intel के "Software Developer Manuals" जैसे CPU निर्माताओं द्वारा दिए गए optimization guides और architecture manuals पढ़ना भी मदद करता है.
  • Ghidra या Godbolt में छोटे programs डालकर यह देखना भी अच्छा तरीका है कि कौन-सी assembly output होती है। यह समझना ज़रूरी है कि compiler द्वारा generated code अक्सर instruction selection से ज़्यादा optimization passes की वजह से अच्छा होता है.
  • पहले PowerPC, x86, ARM जैसी किसी specific architecture का manual पढ़ें, फिर छोटे C programs compile करके disassembly का विश्लेषण करें ताकि code और instructions के बीच का संबंध समझा जा सके.
  • "Introduction to 64 Bit Assembly Programming for Linux and OS X" या ARMv7, ARMv8, RISC-V, x86 architecture documents देखना भी अच्छा है। RosettaCode या GitHub के example code का विश्लेषण करना भी मददगार है.
  • "Turing Complete" गेम के जरिए खुद ISA बनाना और assembly में puzzles हल करना भी मज़ेदार तरीका है.
  • NASM tutorial से शुरू करके बाद में Intel manuals देखना भी अच्छा तरीका है.
  • "Nand2Tetris" project के जरिए assembly और compiler concepts को फिर से दोहराना भी recommend किया गया है.