Sponsored Content
Full Discussion: Platform type in Unix
Top Forums Programming Platform type in Unix Post 302121146 by porter on Tuesday 12th of June 2007 04:50:58 AM
Old 06-12-2007
Sure, the issue with big/little endian is their storage in memory. So "\001\000\000\000" sets up four bytes of memory, this could also be done as

char buffer[]={1,0,0,0};

but the string approach allows it to be done inline and use octel encoding, hence the three digits per byte.

Then we try and read a short from that area of memory, now we actually don't know how big a short is, but it's unlikely to be more than four bytes, the spec only says that a short should not be longer than a long, so casting it to a (const short *) means this is a pointer to a short, then the preceeding * gets the value of at that pointer.

If this was a big-endian machine it would have loaded 0x0100 into the short, if it was little-endian it would have loaded 0x0001.

In the very rare case that a short was 4 bytes, then the big-endian machine would have loaded 0x01000000 hence the test for < 256.
 

10 More Discussions You Might Find Interesting

1. Programming

C++ on True Unix Platform

Hi all: I would like to get some details about development using C++ on TRUE Unix platform. Can anyone help me ?? Thanks, -Mandar (2 Replies)
Discussion started by: mandar3
2 Replies

2. UNIX for Advanced & Expert Users

Porting of Windows written unix scripts to unix platform

Can anybody help me in finding out a solution for the problem below? When we write .unix or .sh files in windows OS and port them to Unix platforms there is a character ^M inserted at the end of each line of the script file. During ftp porting I set the transfer mode as ASCII for the script... (7 Replies)
Discussion started by: tamilselvi
7 Replies

3. UNIX for Dummies Questions & Answers

Need help in choosing Unix Platform.

I'm a completely noob to Unix. I have previously managed quite well Windows OS's but never Unix. -My question is quite simple: I've been investigating what's the easiest and most complex Unix OS. However, it seems there are quite a couple of OS's from which to choose, like: -Darwin ... (3 Replies)
Discussion started by: justanoob
3 Replies

4. UNIX for Dummies Questions & Answers

i am newer to unix platform

i have to select particular fields from a multiple line record. my record is in dump.txt file and looks like this ******************* tipo = abonado simplex, Idiomas = dic1 - none, Operador = estandar Serv. portadora admitido: modem ind = 0 numero telefonico = 79260960, att = 0... (1 Reply)
Discussion started by: junaid.nehvi
1 Replies

5. UNIX for Dummies Questions & Answers

Most used unix platform as desktop.

Just wonder about this question everytime that how many of us use unix as desktop and prefers which unix platform as desktop. - nilesh (4 Replies)
Discussion started by: ynilesh
4 Replies

6. Programming

about unix platform

Hi can any body post example for socket tcpclient in c++ act like browser with HTTp 1.1 and send message for the server (2 Replies)
Discussion started by: Net Star
2 Replies

7. UNIX for Dummies Questions & Answers

Is unix os or platform?

hellow everyone, iam a new user to linux and i have question about unix os. unix is operating system or platform iam confused. i have read some article about unix but i haven't found the answer what iam searching for. so iam confused in this topic can anyone made it clear. Any types of... (8 Replies)
Discussion started by: paruhang
8 Replies

8. Red Hat

Machine/Hardware platform/Processor type

Hi, I am just confused about these three things which are shown in the output of uname command. I am running RH lINUX 9.0 on hardware having Intel HT CPU. My uname shows uname -p i686 (processor) uname -m i686 (machine) uname -i i386 (hardware) I was about to ... (1 Reply)
Discussion started by: dextergenious
1 Replies

9. UNIX for Advanced & Expert Users

R plots in UNIX platform

How do you see plots produced in R under UNIX platform? Thanks! (2 Replies)
Discussion started by: johnkim0806
2 Replies

10. Red Hat

Double data type C Red Hat platform problem

I'm converting a binary file to ASCII using c code. The folllowing block of code prints correct double value 00000.000000000 on HPUNIX platform. longi double; /* C79 - Price Per Minute */ memcpy(&longi,&rbuff,8); fprintf(wfp,"%015.9f ",longi); prints : 00000.000000000 ... (6 Replies)
Discussion started by: krk
6 Replies
mlib_VectorReverseByteOrder_Inp(3MLIB)			    mediaLib Library Functions			    mlib_VectorReverseByteOrder_Inp(3MLIB)

NAME
mlib_VectorReverseByteOrder_Inp - reverse byte order of vector, in place SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_VectorReverseByteOrder_Inp(void *xz, mlib_s32 n, mlib_s32 s); DESCRIPTION
The mlib_VectorReverseByteOrder_Inp() function changes the encoding of each element from big endian to little endian, or from little endian to big endian. It reverses the byte order of each element of the vector, in place. PARAMETERS
The function takes the following arguments: xz Pointer to the input and output vector. n Number of elements in the vectors. s Size of elements in bytes. RETURN VALUES
The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
mlib_VectorReverseByteOrder(3MLIB), mlib_VectorReverseByteOrder_S16(3MLIB), mlib_VectorReverseByteOrder_S16_S16(3MLIB), attributes(5) SunOS 5.11 2 Mar 2007 mlib_VectorReverseByteOrder_Inp(3MLIB)
All times are GMT -4. The time now is 08:34 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy