第3部分- Linux ARM汇编 引言

为什么要学汇编

摘自书籍

Why

should engineers and programmers spend time learning to program in assembly

language? The reasons presented in the first edition are as valid today as in 2009,

perhaps even more so. The complexity of the modern SoCs presents challenges in

communications between the multiple processors and peripheral devices, challenges

in optimization of the sub-systems for performance and power consumption, and

challenges in reducing costs by efficient use of memory. Knowledge of the assembly

language of the processors, and the insight into the operation of the processors that

such knowledge provides, is often the key to the timely and successful completion of

these tasks and launch of the product. Further, in the drive for performance, both in

speed of the product to the user and in a long battery life, augmenting the high-level

language development with targeted use of hand-crafted assembly language will

prove highly valuable—but we don’t stop here. Processor design remains a highly

skilled art in which a thorough knowledge of assembly language is essential. The

same is true for those tasked with compiler design, creating device drivers for the

peripheral subsystems, and those producing optimized library routines. High quality

compilers, drivers, and libraries contribute directly to performance and development

time. Here a skilled programmer or system designer with a knowledge of assembly

language is a valuable asset.