Electronic Design
  • Resources
  • Directory
  • Webinars
  • CAD Models
  • Video
  • Blogs
  • More Publications
  • Advertise
    • Search
  • Top Stories
  • Tech Topics
  • Analog
  • Power
  • Embedded
  • Test
  • AI / ML
  • Automotive
  • Data Sheets
  • Topics
    - TechXchange Topics --- Markets --AutomotiveAutomation-- Technologies --AnalogPowerTest & MeasurementEmbedded
    Resources
    Electronic Design ResourcesTop Stories of the WeekNew ProductsKit Close-UpElectronic Design LibrarySearch Data SheetsCompany DirectoryBlogsContribute
    Members
    ContentBenefitsSubscribeDigital editions
    Advertise
    https://www.facebook.com/ElectronicDesign
    https://www.linkedin.com/groups/4210549/
    https://twitter.com/ElectronicDesgn
    https://www.youtube.com/channel/UCXKEiQ9dob20rIqTA7ONfJg
    1. Archive

    Write Great Code, Volume 2: Thinking Low-Level, Writing High-Level

    Sept. 14, 2006
    By Randall Hyde
    ISBN: 1593270658
    William G. Wong
    This is the second book in the “Write Great Code” series that started with an overview of hardware. This volume narrows the focus to the x86 and PowerPC platforms to provide contrast to various hardware and software architectural approaches.

    The premise behind the series, espoused in this book’s title, is brought to fruition in this volume. It starts by examining the hardware platforms and assembler code but in the context of how a high level language like C or C++ will utilize the hardware. The assembler code samples show what a typical compiler will generate for the corresponding C code. Randall highlights the reason and costs so you can learn what kind of high level programming approaches are good and what might not be.

    Of course, the downside is that all compilers are not equal and optimizations can radically change the efficiency of an application. Still, understanding the costs and efficiencies of both the hardware and emitted object code are very valuable to embedded developers. It is less but still important for programmers that will be targeting PC and server environments.

    The book provides an excellent overview of the topics it cover including data types, expressions and control structures. This makes up the bulk of the book and the approach is consist: look at the low level implementation and then show the C or C++ counterpart. The discussion of various optimizations is good and it will be very useful for anyone who has not concentrated on compiler optimizations in the past.

    It will be interesting to see how this series develops. At this point, you will have a good concept of the underlying system and how you and a compiler will take advantage of the system’s architecture. Yet to be addressed are more global considerations such as cross module support and multitasking. Still, this offering continues to fill out the series and provides easy, informative reading.

    If you're interested in writing code, you might also like these books:

    Continue Reading

    What’s the Difference Between Python and MicroPython?

    Hardware/Software Co-Design: The Five Core Principles

    Sponsored Recommendations

    CoolSiC™ Products

    Nov. 17, 2023

    Modular systems with high performance and high application efficiency

    Nov. 17, 2023

    The Infineon Podcast4Engineers

    Nov. 17, 2023

    Depth Sensors Visualize Volumes

    Nov. 1, 2023

    Comments

    To join the conversation, and become an exclusive member of Electronic Design, create an account today!

    I already have an account

    New

    Altech Corporation Products for Electronic Design

    Eliminate Resistive Cabin Heating in Electric Vehicles

    “Incredible Animal Journeys”: How Did NatGeo Track and Film Those Migrations?

    Most Read

    Edge AI Opportunities Abound at embedded world

    April 1st, 2023 @ Electronic Design

    Robotic Delivery System Takes Flight


    Sponsored

    The Co-Processor Architecture: An Embedded System Architecture for Rapid Prototyping

    Encryption: The Key to Embedded Security

    C2000 real-time microcontrollers

    Electronic Design
    https://www.facebook.com/ElectronicDesign
    https://www.linkedin.com/groups/4210549/
    https://twitter.com/ElectronicDesgn
    https://www.youtube.com/channel/UCXKEiQ9dob20rIqTA7ONfJg
    • About Us
    • Contact Us
    • Advertise
    • Do Not Sell or Share
    • Privacy & Cookie Policy
    • Terms of Service
    © 2023 Endeavor Business Media, LLC. All rights reserved.
    Endeavor Business Media Logo