From ba495cf2107b9cf82b507b69eafc65cf81e99137 Mon Sep 17 00:00:00 2001 From: Hizenberg Date: Thu, 29 Feb 2024 10:59:49 +0530 Subject: [PATCH] machine endianess --- endianess/Makefile | 14 ++++++++++++++ endianess/endian.c | 30 ++++++++++++++++++++++++++++++ endianess/endian.h | 26 ++++++++++++++++++++++++++ endianess/endian_exe | Bin 0 -> 16032 bytes endianess/main.c | 33 +++++++++++++++++++++++++++++++++ 5 files changed, 103 insertions(+) create mode 100644 endianess/Makefile create mode 100644 endianess/endian.c create mode 100644 endianess/endian.h create mode 100755 endianess/endian_exe create mode 100644 endianess/main.c diff --git a/endianess/Makefile b/endianess/Makefile new file mode 100644 index 0000000..5114fae --- /dev/null +++ b/endianess/Makefile @@ -0,0 +1,14 @@ +TARGET: endian_exe + +endian_exe: main.o endian.o + gcc main.o endian.o -o endian_exe + +endian.o: endian.c + gcc -c endian.c -o endian.o + +main.o: main.c + gcc -c main.c -o main.o + +clean: + rm main.o + rm endian.o diff --git a/endianess/endian.c b/endianess/endian.c new file mode 100644 index 0000000..caea0e4 --- /dev/null +++ b/endianess/endian.c @@ -0,0 +1,30 @@ +/* + * ===================================================================================== + * + * Filename: endian.c + * + * Description: + * + * Version: 1.0 + * Created: 29/02/24 10:13:18 AM IST + * Revision: none + * Compiler: gcc + * + * Author: YOUR NAME (), + * Organization: + * + * ===================================================================================== + */ + +#include "endian.h" + +int +machine_endianness_type(){ + + unsigned short int a = 1; + char ist_byte = *((char *)&a); + if( ist_byte == 0 ) + return 0; + else if( ist_byte == 1 ) + return 1; +} diff --git a/endianess/endian.h b/endianess/endian.h new file mode 100644 index 0000000..23961fd --- /dev/null +++ b/endianess/endian.h @@ -0,0 +1,26 @@ +/* + * ===================================================================================== + * + * Filename: endian.h + * + * Description: + * + * Version: 1.0 + * Created: 29/02/24 10:11:52 AM IST + * Revision: none + * Compiler: gcc + * + * Author: YOUR NAME (), + * Organization: + * + * ===================================================================================== + */ + +#ifndef __ENDIANESS__ +#define __ENDIANESS__ + +/* return 0 - Big endian, 1 for Little endian */ +int +machine_endianness_type(); + +#endif diff --git a/endianess/endian_exe b/endianess/endian_exe new file mode 100755 index 0000000000000000000000000000000000000000..1fdcde030e9a7b4dd4895545db9a8ebd02a8878b GIT binary patch literal 16032 zcmeHOU2Ggz6~4Rqb7+#?qzQEr8V`^{L-A&vI95s&vi{j*3{GMaM-*r~9ec;#75n4v z&bD@Gz~F)!s)*zTB!mzMq_zT;K9s^kA6%tBDJmi1DXMrdh)S-)Pbv~9H1%@Mo%2n` z(>0O$fDoE%?R@us=Y03xIdf;{j`!ZLWC!-gV=;xaM14|mX)x(A88OUuNroV!cB|EN zY*Sm*aw;#?oM+E?KvpkZj4#9%;g=Ayu9Y)Q@B<#LfaoD3>lRC`+#yOpCFjAqWo(dg z7=JDe0AcsrGgwT?&_^FTMF$M(xGU$|J^%B27osU~85D$$i>#X!-K^+*l=fx?5l@Z@ ze|Aee!)TC=lcA4Fg>`p{E{uKR59BsD9ev%+y_fa|MVB^oH7bmq9<6|A?=z&6ODi7# z8E~18NPCN2hqS~WC}CCGi-qB?&h5oqd$CZiPqa_$?rQJqOw}r>9lBxe7q`J<>cF96 zDn6xVn1i14>*>Q`W&3^W?%wl}2bLa7Kl$T(TRuK^$KdHJzd;?WVINNHk0HTjj0g7d z&i|`SOJ1o9&bg8%7CEqHT@#y0oY92mcAEL;7V)nw!nYFtA^N;4jo00pvMdVkh*fj# zs%w?(LYbJ63ELVil8&Q4|Z4;{2}PSqJJ)Lf@J zbg;KrDLX^&4dq>1==xj*IgFp2rc=#Q?9r z@5C@0;JtAqhKz?R2;?h33=u>Th$0Y0Ac{Z~fhYn|1fmH1KSscu{!@$j*s>S5D`kFt z#*H`5o6|3}obgY!vFlf4YTWiJ9TROC%5gc*_BUo5ly3Vjl}ArO(DCQ~6Bq6^PyE50 z{^RArp=`%Y$1CQ^z30f@*l?I!uZ*S=ZI5Vou8(Y|i8W6y`zFJkZ@C+&J1NdncUCrL z6KzxMd`6J`ZSBA7^9+UM^vAy$DnA=8YHJ78qOUtfOId%`V?YGbRHy$M8 zG15@*lE38M&86vZB71H6_%-FOrIUGb4OjZ|+^^>wjY|n4o)Y3YBDCa{GhD;y%h_u& zI{WOk#Ix$rY-8$pL)BMkhfAxe5TgRW4qQ_AoKgB(Ex0<|c9fzBL=lK05Je!0Koo%} z0#O8_2t*NxA`nF&iolH{z`u756kNCH7*07?u**it9?2KVj_N76VT!7YZCAkUT!p=AT$UE30J<^Xv`3PnsAno6aN;T3@Z-D{HHi1)5uew;c)MYcaopAoY2OTBOZqGx9+N>K!&2t*NxA`nF&ia->B zC<0Lgq6kD0_+N+s)*oWMA=VP|nnq5mJn$Ddu9osoW!>UNDPvvZW+~$xYLk?)zLDRT zIKh5(zER=w4`eYR)*y~AW%l~I)w5!MpGT{cf;S1a3T_YtV2$FOtY^fUNciKuk=HYF zy2S&(VelF082UXUeze$AC)D?L!#f`$wJZI6tIsbfdio_;ml0=rZPev?Ip2Ru8U2>( z|LcJD3G z9+p5DOj5d;KF$2M5Fb|wH5KZgA^g)Jey8vl_f*uWpN=uLNwsFYGOiP^wvMR{{yJUH z>b?7OySR_QKdSxL`|EwdKTeru{eNl^ezEiYg|7c*mHr@VzK+f6e^L9tUxlyhIW1e~ zud7Ebzt{e)3il28e^92`dhhiVC<9Ib%xiw5YRLph%BG2LR!=waNwv|BKU60B$CC=* zJKzuLdJ^hO@_nTL2SdhDsVCfSjd%m%0Dg`5wegJ#;~A!JF;9OG$!)5>PkfTbiIIV) zhehJo(Rdh?@uvT|M5Z5!KgJbQKNJ5urT_YWOk{k9cMHT; z;`A*Z8vp9(NY(8~RcP_MJzTI{drT2gbL*p{sS$O3p}ggmtPx%+&x`PL6>F?m8Mcd7 z&aG5ymR+AvBbCy4(Q%zzD&5?J7wH!)yIQp;EvM{OC)H@xE;&}NUMfwJBv7)*(_P@o zYyGJ|-oF|tV_Ex;bRW!G*+YF6t<>-P+@bD+{k=rfeh4dTiq-5pqO1c0hkLpQti${F zAI%O~L)|?CSyF^I5@fJn;0AjHcpHN6%Xhb&q8gLX0>px5U-)Rnm{$pMTMElrN67IiEdY;okk9i;P32B%6$Z>`q z^REJNe9F*c9tp&}kz91*I)dqbD)1Z)dd$m!v@B02^dEk}FO!w$d?;hy2gLI!+<&Q7 z&uclR&|}^SoDoN~A3p!@ke&5C;^%Mt5&`1GMb3xyKO~N0g8KdEhCDxRAzLtoumAVR z7}Oi0^D!u!34e1d#(7&S$k8%0h@aM1C4;l7H z88}DUL_m-CzKe3=@FN$UPzGKhmd762$9&b_-zwLS?;lRk;X3|=ICg;^`{ZV}v$s;W zd*C0T2fjm=pdRzzInf)w(#t>xTu$Pk9`nzZwC9h0q8jK>UPWT&(0|PTT16lB=eB}r zt+X%hz6ts^pYbx#2hkt90pHzH;VJ3Ztz_eO6Z8k)D|~;T?*X|w%P(A%-bO=SQO8QM S8h9GqOn+vV=e6ku`hNrSr2+Q< literal 0 HcmV?d00001 diff --git a/endianess/main.c b/endianess/main.c new file mode 100644 index 0000000..29cfb32 --- /dev/null +++ b/endianess/main.c @@ -0,0 +1,33 @@ +/* + * ===================================================================================== + * + * Filename: main.c + * + * Description: + * + * Version: 1.0 + * Created: 29/02/24 10:31:18 AM IST + * Revision: none + * Compiler: gcc + * + * Author: YOUR NAME (), + * Organization: + * + * ===================================================================================== + */ + +#include "endian.h" +#include + +int main(){ + int val = machine_endianness_type(); + + if( val ){ + printf("Little endian machine\n"); + } + else{ + printf("Bit endian machine\n"); + } + + return 0; +}