Platform migration requires consideration of the Endian-architecture of the current and target platforms, as well as the Endian-architecture of the code. Software is sometimes designed with one specific Endian-architecture in mind, limiting the portability of the code to other processor architectures. This type of implementation is considered to be Endian-specific. However, Endian-neutral software can be developed, allowing the code to be ported easily between processors of different Endian-architectures, and without rewriting any code. Endian-neutral software is developed by identifying system memory and external data interfaces, and using Endian-neutral coding practices to implement the interfaces.

This paper establishes a set of fundamental guidelines for software developers who wish to develop Endian-neutral code for embedded applications. Following the guidelines described in this paper will greatly increase the usability and portability of embedded software between hardware platforms.