SwapBytes16.c revision 4fd606d1f5abe38e1f42c38de1d2e895166bd0f4
2N/A/** @file
2N/A Math worker functions.
2N/A
2N/A Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
2N/A This program and the accompanying materials
2N/A are licensed and made available under the terms and conditions of the BSD License
2N/A which accompanies this distribution. The full text of the license may be found at
2N/A http://opensource.org/licenses/bsd-license.php.
2N/A
2N/A THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
2N/A WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
2N/A
2N/A**/
2N/A
2N/A
2N/A
2N/A
2N/A#include "BaseLibInternals.h"
2N/A
2N/A/**
2N/A Switches the endianess of a 16-bit integer.
2N/A
2N/A This function swaps the bytes in a 16-bit unsigned value to switch the value
2N/A from little endian to big endian or vice versa. The byte swapped value is
2N/A returned.
2N/A
2N/A @param Value A 16-bit unsigned value.
2N/A
2N/A @return The byte swapped Value.
2N/A
2N/A**/
2N/AUINT16
2N/AEFIAPI
2N/ASwapBytes16 (
2N/A IN UINT16 Value
2N/A )
2N/A{
2N/A return (UINT16) ((Value<< 8) | (Value>> 8));
2N/A}
2N/A