این دستور odposix است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
od - فایلها را در قالبهای مختلف تخلیه کنید
خلاصه
od [−v] [-A آدرس_پایه] [-j تماس با ما] [-ن تعداد دفعات مشاهده] [-t type_string]...
[پرونده...]
od [-bcdosx] [پرونده] [[+]چاپ افست[.][b]]
شرح
La od ابزار باید محتویات فایل های ورودی خود را در خروجی استاندارد در یک کاربر بنویسد.
فرمت مشخص شده
OPTIONS
La od ابزار باید با حجم تعاریف پایه POSIX.1-2008 مطابقت داشته باشد، بخش 12.2,
سودمندی نحو دستورالعمل، با این تفاوت که ترتیب ارائه از -t گزینه ها و
-bcdosx گزینه ها قابل توجه است.
گزینه های زیر باید پشتیبانی شوند:
-A آدرس_پایه
پایه افست ورودی را مشخص کنید. بخش توضیحات گسترده را ببینید. در
برنامه باید اطمینان حاصل کند که آدرس_پایه option-argument یک شخصیت است.
شخصیت ها 'd', "او"و 'ایکس' مشخص کنید که پایه افست باید نوشته شود
به ترتیب اعشاری، اکتال یا هگزادسیمال. شخصیت 'N' مشخص می کند
که افست نباید نوشته شود.
-ب بایت ها را به هشتی تفسیر کنید. این باید معادل باشد -t o1.
-ج بایت ها را به عنوان کاراکترهای مشخص شده توسط تنظیمات فعلی تفسیر کنید LC_CTYPE
دسته بندی. برخی از کاراکترهای غیر گرافیکی به عنوان فرار C ظاهر می شوند: "NUL=\0", "BS=\b",
"FF=\f", "NL=\n", "CR=\r", "HT=\t"; بقیه به صورت اعداد هشت رقمی 3 رقمی ظاهر می شوند.
-د تفسیر کلمهs (واحدهای دو بایتی) در اعشار بدون علامت. این باید معادل باشد
به -t u2.
-j تماس با ما پریدن از روی تماس با ما بایت از ابتدای ورودی در od ابزار باید بخواند
یا از اولی گذشته تماس با ما بایت ها در فایل های ورودی به هم پیوسته اگر
ورودی ترکیبی حداقل نیست تماس با ما بایت طولانی، od ابزار باید a بنویسد
پیام تشخیصی به خطای استاندارد و خروج با وضعیت خروج غیر صفر.
به طور پیشفرض، تماس با ما گزینه-argument باید به عنوان یک عدد اعشاری تفسیر شود.
با 0x یا 0X پیشرو، افست باید به صورت هگزادسیمال تفسیر شود
عدد؛ در غیر این صورت، با پیشرو '0'، افست باید به عنوان یک تفسیر شود
عدد اکتال الحاق شخصیت 'ب', 'k'، یا 'm' جبران آن را موجب می شود
به ترتیب مضرب 512، 1024 یا 1048576 بایت تفسیر شود. اگر
la تماس با ما عدد هگزادسیمال است، هر ضمیمه شده است 'ب' در نظر گرفته می شود
رقم هگزادسیمال نهایی
-ن تعداد دفعات مشاهده فرمت نه بیشتر از تعداد دفعات مشاهده بایت ورودی به صورت پیش فرض، تعداد دفعات مشاهده تفسیر خواهد شد
به عنوان یک عدد اعشاری با 0x یا 0X پیشرو، تعداد دفعات مشاهده باید به عنوان یک تفسیر شود
عدد هگزادسیمال؛ در غیر این صورت، با پیشرو '0'، باید به عنوان یک تعبیر شود
عدد اکتال اگر تعداد دفعات مشاهده بایت های ورودی (پس از پرش موفقیت آمیز، اگر -j تماس با ما
مشخص شده است) در دسترس نیستند، نباید خطا در نظر گرفته شود. را od
ابزار باید ورودی موجود را قالب بندی کند.
-o تفسیر کلمهs (واحدهای دو بایتی) در هشتی. این باید معادل باشد -t o2.
-s تفسیر کلمهs (واحدهای دو بایتی) در اعشار امضا شده. این باید معادل باشد
-t d2.
-t type_string
یک یا چند نوع خروجی را مشخص کنید. بخش توضیحات گسترده را ببینید. در
برنامه باید اطمینان حاصل کند که type_string option-argument یک رشته است
تعیین انواع مورد استفاده در هنگام نوشتن داده های ورودی. رشته باید
از کاراکترهای مشخصات نوع تشکیل شده است a, c, d, f, o, uو x، مشخص کردن
کاراکتر نامگذاری شده، کاراکتر، اعشاری امضا شده، ممیز شناور، هشتی، بدون علامت
اعشاری، و هگزادسیمال، به ترتیب. کاراکترهای مشخصات نوع d, f,
o, uو x می تواند توسط یک عدد صحیح اعشاری بدون علامت اختیاری دنبال شود که
تعداد بایت هایی که باید توسط هر نمونه از خروجی تبدیل شوند را مشخص می کند
نوع کاراکتر مشخصات نوع f می تواند به صورت اختیاری دنبال شود F, D، یا
L نشان می دهد که تبدیل باید به یک مورد از نوع اعمال شود شناور,
دو برابر، یا طولانی دو برابر، به ترتیب. کاراکترهای مشخصات نوع d, o, u,
و x می تواند به صورت اختیاری دنبال شود C, S, I، یا L نشان می دهد که
تبدیل باید به یک مورد از نوع اعمال شود ارابه, کوتاه, INT، یا طولانی,
به ترتیب. چندین نوع را می توان درون یکسان به هم متصل کرد type_string و
چندگانه -t گزینه ها را می توان مشخص کرد. خطوط خروجی باید برای هر کدام نوشته شود
نوع مشخص شده به ترتیبی که کاراکترهای مشخصات نوع هستند
مشخص شده.
−v تمام داده های ورودی را بنویسید. بدون −v گزینه، هر تعداد گروه خروجی
خطوطی که با گروه خروجی بلافاصله قبلی یکسان هستند
خطوط (به استثنای افست بایت)، باید با یک خط حاوی
فقط یک ('*').
-x تفسیر کلمهs (واحد دو بایتی) در هگزادسیمال. این باید معادل باشد
-t x2.
چندین نوع را می توان با استفاده از چندگانه مشخص کرد -bcdostx گزینه ها. خطوط خروجی هستند
برای هر نوع مشخص شده به ترتیبی که انواع مشخص شده اند نوشته شده است.
عملگرها
عملگرهای زیر باید پشتیبانی شوند:
پرونده نام مسیر یک فایل برای خواندن. اگر نه پرونده عملوندها مشخص شده اند، استاندارد
ورودی باید استفاده شود.
اگر بیش از دو عملوند وجود نداشته باشد، هیچ یک از آنها وجود ندارد -A, -j, -ن, -t، یا −v
گزینه ها مشخص شده است و یکی از موارد زیر صحیح است: کاراکتر اول
از آخرین عملوند a است ('+') یا دو عملوند و the وجود دارد
اولین کاراکتر آخرین عملوند عددی است. آخرین عملوند باید باشد
به عنوان یک عملوند افست در سیستم های سازگار با XSI تفسیر می شود. زیر اینها
در شرایط، نتایج در سیستم هایی که مطابق با XSI نیستند مشخص نیست
سیستم.
[+]چاپ افست[.][b]
La چاپ افست عملوند افست را در فایلی که در آن dumping قرار دارد مشخص می کند
آغاز شود. این عملوند معمولاً به عنوان بایت هشتگانه تفسیر می شود. اگر "." is
ضمیمه، افست باید به اعشار تفسیر شود. اگر 'ب' ضمیمه شده است،
افست باید در واحدهای 512 بایتی تفسیر شود.
STDIN
ورودی استاندارد باید استفاده شود اگر خیر پرونده عملوندها مشخص شده اند و اگر a
پرونده عملوند است '-' و پیاده سازی درمان می کند '-' به معنای ورودی استاندارد.
در غیر این صورت، ورودی استاندارد نباید استفاده شود. به بخش فایل های ورودی مراجعه کنید.
INPUT فایل ها
فایل های ورودی می توانند هر نوع فایلی باشند.
محیط زیست متغیرها
متغیرهای محیطی زیر باید بر اجرای آن تأثیر بگذارند od:
زبان یک مقدار پیش فرض برای متغیرهای بین المللی سازی که تنظیم نشده اند یا
خالی. (به جلد تعاریف پایه POSIX.1-2008 مراجعه کنید، بخش 8.2,
بین المللی کردن متغیر برای تقدم بین المللی شدن
متغیرهایی که برای تعیین مقادیر دستههای محلی استفاده میشوند.)
LC_ALL اگر روی یک مقدار رشته ای غیر خالی تنظیم شده است، مقادیر بقیه را لغو کنید
متغیرهای بین المللی سازی
LC_CTYPE محلی را برای تفسیر توالی بایت های داده متنی تعیین کنید
به عنوان کاراکتر (به عنوان مثال، تک بایت در مقابل کاراکترهای چند بایتی در
آرگومان ها و فایل های ورودی).
LC_MESSAGES
محلی را که باید برای تأثیرگذاری بر قالب و محتویات استفاده شود، تعیین کنید
پیام های تشخیصی با خطای استاندارد نوشته شده است.
LC_NUMERIC
محلی را برای انتخاب کاراکتر ریشه ای که هنگام نوشتن استفاده می شود، تعیین کنید
خروجی فرمت ممیز شناور
nlspath تعیین محل کاتالوگ پیام برای پردازش LC_MESSAGES.
نامتقارن رویدادها
پیش فرض
با توجه به
بخش توضیحات گسترده را ببینید.
STDERR
خطای استاندارد باید فقط برای پیام های تشخیصی استفاده شود.
OUTPUT فایل ها
ندارد.
تمدید شده شرح
La od ابزار باید هر فایل ورودی را به صورت متوالی در خروجی استاندارد کپی کند و تبدیل کند
داده های ورودی با توجه به انواع خروجی مشخص شده توسط -t گزینه یا -bcdosx
گزینه ها. اگر نوع خروجی مشخص نشده باشد، خروجی پیشفرض باید به شکلی باشد که انگار -t oS بوده است
مشخص شده.
تعداد بایت های تبدیل شده توسط مشخص کننده نوع خروجی c ممکن است بسته به متغیر باشد
در LC_CTYPE رده است.
تعداد پیشفرض بایتهای تبدیل شده توسط مشخصکنندههای نوع خروجی d, f, o, uو x
مطابق با انواع مختلف زبان C به شرح زیر است. اگر c99 کامپایلر موجود است
سیستم، این مشخص کننده ها باید با اندازه های استفاده شده به طور پیش فرض در آن مطابقت داشته باشند
کامپایلر در غیر این صورت، این اندازه ها ممکن است در بین سیستم هایی که با POSIX.1-2008 مطابقت دارند، متفاوت باشد.
* برای کاراکترهای مشخص کننده نوع d, o, uو x، تعداد پیش فرض بایت ها باید باشد
با اندازه نوع عدد صحیح پایه پیاده سازی زیربنایی مطابقت دارد. برای
این کاراکترهای مشخص کننده، پیاده سازی باید مقادیر اختیاری را پشتیبانی کند
تعداد بایت هایی که باید به تعداد بایت های زبان C تبدیل شوند
انواع ارابه, کوتاه, INTو طولانی. این اعداد را می توان با یک نیز مشخص کرد
کاربرد به عنوان شخصیت ها 'C', 'S', 'من'و 'L'، به ترتیب. پیاده سازی
همچنین باید مقادیر 1، 2، 4 و 8 را پشتیبانی کند، حتی اگر هیچ نوع زبان C ارائه نکند.
از آن اندازه ها پیاده سازی باید از مقدار اعشاری مربوط به پشتیبانی کند
نوع زبان C طولانی طولانی. ترتیب بایت مورد استفاده هنگام تفسیر مقادیر عددی
پیاده سازی تعریف شده است، اما باید مطابق با ترتیبی باشد که یک ثابت از
نوع مربوطه در حافظه روی سیستم ذخیره می شود.
* برای کاراکتر مشخص کننده نوع f، تعداد پیش فرض بایت ها باید مطابق باشد
تعداد بایت ها در دقت دوگانه اساسی اجرای اساسی
نوع داده ممیز شناور پیاده سازی باید از مقادیر اختیاری پشتیبانی کند
تعداد بایت هایی که باید به تعداد بایت های زبان C تبدیل شوند
انواع شناور، دو برابرو طولانی دو برابر. این اعداد را می توان با یک نیز مشخص کرد
کاربرد به عنوان شخصیت ها 'F', 'D'و 'L'بود.
کاراکتر تعیین کننده نوع a مشخص می کند که بایت ها باید به صورت نامگذاری شده تفسیر شوند
نویسههای نسخه مرجع بینالمللی (IRV) ISO/IEC 646:1991
استاندارد فقط هفت بیت کم اهمیت از هر بایت باید برای این نوع استفاده شود
مشخصات. بایت هایی با مقادیر فهرست شده در جدول زیر باید با استفاده از آن نوشته شوند
نام های مربوط به آن شخصیت ها
جدول: تحت عنوان شخصیت in od
┌─────────────┬──────────────┬───────────────────┬ ──────────────┐
│مقدار نام │ مقدار نام │ مقدار نام │ مقدار نام │
├─────────────┼──────────────┼───────────────────┼ ──────────────┤
│\000 تهی │ \ 001 SOH │ \ 002 stx │ \ 003 etx │
│\004 خوردن │ \ 005 enq │ \ 006 ACK │ \ 007 یگان سنجش صوت │
│\010 bs │ \ 011 ht │ \ 012 lf or nl* │ \ 013 vt │
│\014 ff │ \ 015 cr │ \ 016 so │ \ 017 si │
│\020 خسته کردن │ \ 021 dc1 │ \ 022 dc2 │ \ 023 dc3 │
│\024 dc4 │ \ 025 برهنه │ \ 026 پسر │ \ 027 etb │
│\030 می توان │ \ 031 em │ \ 032 زیر │ \ 033 ESC │
│\034 fs │ \ 035 gs │ \ 036 rs │ \ 037 us │
│\040 sp │ \ 177 از │ │ │
└─────────────┴──────────────┴───────────────────┴ ──────────────┘
توجه داشته باشید: La "\012" مقدار ممکن است به صورت نوشته شود lf or nl.
کاراکتر تعیین کننده نوع c مشخص می کند که بایت ها باید به عنوان کاراکتر تفسیر شوند
مشخص شده توسط تنظیمات فعلی LC_CTYPE دسته محلی شخصیت های ذکر شده در
جدول در جلد تعاریف پایه POSIX.1-2008، فصل 5, پرونده قالب نشانه گذاری
('\\', '\آ', '\b', '\f', '\n', '\r', '\t', '\v') باید به عنوان متناظر نوشته شود
سکانس های فرار، به جز این باید به صورت تک نوشته شود و الف
NUL باید به صورت نوشته شود '\0'. سایر کاراکترهای غیر قابل چاپ باید به صورت یک نوشته شوند
عدد اکتالی سه رقمی برای هر بایت در کاراکتر. کاراکترهای چند بایتی قابل چاپ
باید در ناحیه مربوط به اولین بایت کاراکتر نوشته شود. دو-
دنباله کاراکتر "**" باید در ناحیه مربوط به هر بایت باقیمانده نوشته شود
در شخصیت، به عنوان نشانه ای از ادامه کاراکتر. زمانی که یا -j
تماس با ما or -ن تعداد دفعات مشاهده گزینه همراه با مشخص شده است c نوع مشخص کننده، و این منجر به
تلاش برای شروع یا پایان در وسط یک کاراکتر چند بایتی، نتیجه این است
پیاده سازی تعریف شده است.
داده های ورودی باید در بلوک هایی دستکاری شوند، جایی که یک بلوک به عنوان مضربی از تعریف می شود
کمترین مضرب مشترک تعداد بایت های تبدیل شده توسط خروجی مشخص شده
انواع اگر کمترین مضرب مشترک بزرگتر از 16 باشد، نتایج نامشخص هستند. هر یک
بلوک ورودی باید به صورت تبدیل شده توسط هر نوع خروجی، یک در هر خط نوشته شده، نوشته شود
ترتیبی که انواع خروجی مشخص شد. اگر اندازه بلوک ورودی بزرگتر از
تعداد بایت های تبدیل شده توسط نوع خروجی، نوع خروجی باید به ترتیب
بخش های بلوک ورودی و خروجی هر یک از تبدیل ها را تبدیل می کند
باید با یک یا چند جدا شود شخصیت ها.
اگر در نتیجه مشخصات -ن گزینه یا انتهای فایل در حال رسیدن به
آخرین فایل ورودی، داده های ورودی فقط تا حدی یک نوع خروجی را برآورده می کند، ورودی باید باشد
به اندازه کافی با بایت های تهی برای نوشتن آخرین بایت ورودی گسترش یافته است.
مگر اینکه -A n مشخص شده است، اولین خط خروجی تولید شده برای هر بلوک ورودی باید باشد
قبل از آفست ورودی، انباشته در فایل های ورودی، بایت بعدی است
نوشته شده است. فرمت آفست ورودی نامشخص است. با این حال، نباید حاوی هیچ کدام باشد
کاراکترها، باید از اولین کاراکتر خط خروجی شروع شود و باید باشد
به دنبال آن یک یا چند شخصیت ها. علاوه بر این، افست بایت زیر است
آخرین بایت نوشته شده باید پس از پردازش تمام داده های ورودی نوشته شود، اما
نباید توسط هیچ کدام دنبال شود شخصیت ها.
اگر نه -A گزینه مشخص شده است، پایه افست ورودی نامشخص است.
خروج وضعیت
مقادیر خروجی زیر باید برگردانده شوند:
0 همه فایل های ورودی با موفقیت پردازش شدند.
>0 خطایی روی داد.
آثار OF خطاها
پیش فرض
La پیروی بخش هستند آموزنده
کاربرد طریقه استفاده
به برنامههای منطبق با XSI هشدار داده میشود که از نام فایلها با شروع استفاده نکنند '+' یا اولین
عملوند با یک کاراکتر عددی شروع می شود تا بتوان عملکرد قدیمی را حفظ کرد
توسط پیاده سازی ها، مگر اینکه یکی از موارد را مشخص کنند -A, -j، یا -ن گزینه ها. برای ضمانت
که یکی از این نام های فایل همیشه به عنوان یک نام فایل تفسیر می شود، یک برنامه می تواند
همیشه فرمت پایه آدرس را با عبارت مشخص کنید -A گزینه.
مثال ها
اگر فایلی حاوی 128 بایت با مقادیر اعشاری از صفر تا 127، به ترتیب افزایش می یابد.
به عنوان ورودی استاندارد دستور ارائه می شود:
od -A d -t a
در پیاده سازی با استفاده از اندازه بلوک ورودی 16 بایت، خروجی استاندارد،
مستقل از تنظیمات محلی فعلی، شبیه به:
0000000 تهی SOH stx etx خوردن enq ACK یگان سنجش صوت bs ht nl vt ff cr so si
0000016 خسته کردن dc1 dc2 dc3 dc4 برهنه پسر etb می توان em زیر ESC fs gs rs us
0000032 sp ! " # $ % & ' ( ) * + , - . /
0000048 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
0000064 @ A B C D E F G H I J K L M N O
0000080 P Q R S T U V W X Y Z [ \ ] ^ _
0000096 ` a b c d e f g h i j k l m n o
0000112 p q r s t u v w x y z { | } ~ از
0000128
توجه داشته باشید که این حجم از POSIX.1-2008 اجازه می دهد nl or lf به عنوان نام برای استفاده می شود
نویسه استاندارد IRV ISO/IEC 646:1991 با مقدار اعشاری 10. IRV این را نامگذاری می کند
شخصیت lf (فید خط)، اما پیاده سازی های سنتی به این شخصیت اشاره کرده اند
به عنوان خط جدید (nl) و کاراکتر محلی POSIX نام نمادین مربوطه را تنظیم می کند
شخصیت یک است .
فرمان:
od -A o -t o2x2x -ن 18
در سیستمی با کلمات 32 بیتی و پیاده سازی با استفاده از اندازه بلوک ورودی 16 بایت
می تواند 18 بایت را تقریباً با فرمت زیر بنویسد:
0000000 032056 031440 041123 042040 052516 044530 020043 031464
342e 3320 4253 4420 554e 4958 2023 3334
342e3320 42534420 554e4958 20233334
0000020 032472
353a
353a0000
0000022
فرمان:
od -A d -t f -t o4 -t x4 -ن 24 -j 0x15
در سیستمی با دو برابرهای 64 بیتی (به عنوان مثال، IEEE Std 754-1985 double precision floating-
فرمت نقطه ای) 21 بایت از داده های ورودی را حذف می کند و سپس 24 بایت را تقریباً می نویسد
فرمت زیر:
0000000 1.00000000000000e + 00 1.57350000000000e + 01
07774000000 00000000000 10013674121 35341217270
3ff00000 00000000 402f3851 eb851eb8
0000016 1.40668230000000e + 02
10030312542 04370303230
40619562 23e18698
0000024
منطقی
La od ابزار در پیشنهادات اولیه چندین نام داشت، از جمله hd, xd، و بیشتر
تازه هگزدامپ. بر اساس موارد زیر به همه این موارد ایرادات متعددی وارد شد
دلایل:
* hd و xd نام ها با ابزارهای تاریخی که رفتار متفاوتی داشتند در تضاد بودند.
* هگزدامپ توضیحات بسیار پیچیده تر از آنچه برای یک ابزار تخلیه ساده نیاز بود بود.
* od ابزار در تمام پیاده سازی های تاریخی در دسترس بوده است و وجود نداشت
نیاز به ایجاد یک نام جدید برای یک ابزار بسیار شبیه به تاریخی است od ابزار
دلایل اصلی عدم استانداردسازی تاریخی od نیز نسبتاً گسترده بودند.
این دلایل به همراه دلیل توجیهی که چرا توسعه دهندگان استاندارد را توضیح می دهد در زیر آورده شده است
باور کنید که این نسخه از مشکل ذکر شده رنج نمی برد:
* نسخه های BSD و System V از od واگرا شده اند، و تلاقی ویژگی ها
ارائه شده توسط هر دو نیازهای جامعه کاربر را برآورده نمی کند. در واقع سیستم V
نسخه تنها مکانیزمی برای تخلیه بایت های اکتال و کوتاهاس، امضا و
اعشاری بدون علامت کوتاهs، هگزادسیمال کوتاهs و کاراکترهای ASCII. BSD را اضافه کرد
توانایی تخلیه شناورs, دو برابرs، با نام کاراکترهای ASCII، و اکتال، اعشاری امضا شده،
اعشاری بدون علامت و هگزادسیمال طولانیس نسخه ارائه شده در اینجا بیشتر ارائه می دهد
فرم های نرمال شده برای تخلیه بایت ها، کوتاهs, INT، و طولانیs به هشتی، اعشاری امضا شده،
اعشاری بدون علامت و هگزادسیمال. شناور, دو برابرو طولانی دو برابر; و ASCII را به عنوان نامگذاری کرد
و همچنین کاراکترهای محلی فعلی.
* نمی توان یک ابر مجموعه سازگار از BSD و System V ارائه داد
پرچم هایی که الزامات توسعه دهندگان استاندارد را برآورده می کنند. پیش فرض تاریخی od
خروجی خروجی پیش فرض مشخص شده این ابزار است. هیچ کدام از حروف گزینه
برای این نسخه انتخاب شده است od با هر یک از گزینه های نسخه های تاریخی تضاد دارد
of od.
* در سیستم های با اندازه های مختلف برای کوتاه, INTو طولانی، هیچ راهی برای درخواست وجود نداشت
زباله های INTs، حتی در نسخه BSD. به دلیل نحوه نامگذاری گزینه ها، نام
فضا را نمی توان برای حل این مشکلات گسترش داد. به همین دلیل است که -t گزینه بود
اضافه شد (با مشخص کننده های نوع که بیشتر با printf() فرمت های مورد استفاده در
بقیه این جلد POSIX.1-2008) و اندازه های اختیاری فیلد به آن اضافه شد d,
f, o, uو x مشخص کننده های نوع همچنین یکی از دلایل تاریخی بودن
عمل به عنوان یک شکل منسوخ مورد نیاز الزامی نبود od. (اگر چه قدیمی است
نسخه های od به عنوان یک فرم منسوخ فهرست نشده اند، از پیاده سازی ها خواسته می شود
به تشخیص اشکال قدیمیتر برای چندین سال دیگر ادامه دهید a, c, f, oو x
انواع با معنی کاراکترهای قالب مربوطه در تاریخی مطابقت دارند
پیاده سازی های od به جز اندازه های پیش فرض فیلدهای تبدیل شده. را d
فرمت در این جلد از POSIX.1-2008 برای مطابقت با آن امضا شده است printf() نشانه گذاری.
(نسخه های تاریخی از od استفاده d به عنوان مترادف برای u در این نسخه سیستم V
کاربردهای پیاده سازی s برای اعشار امضا شده؛ BSD استفاده می کند i برای اعشار امضا شده و s برای
رشته های با پایان تهی.) غیر از d و u، همه مشخص کننده های نوع با فرمت مطابقت دارند
شخصیت های نسخه تاریخی BSD از od.
اندازه انواع زبان C ارابه, کوتاه, INT, طولانی, شناور, دو برابرو طولانی
دو برابر استفاده می شود حتی اگر تشخیص داده شود که ممکن است صفر یا بیشتر از یک باشد
کامپایلر برای زبان C در یک پیاده سازی و اینکه آنها ممکن است از اندازه های مختلف استفاده کنند
برای برخی از این انواع (به عنوان مثال، یک کامپایلر ممکن است از 2 بایت استفاده کند کوتاهs، 2 بایت
INTs و 4 بایت طولانیs، در حالی که کامپایلر دیگری (یا گزینه ای برای همان کامپایلر)
از 2 بایت استفاده می کند کوتاهs، 4 بایت INTs و 4 بایت طولانیs.) با این وجود، باید یک وجود داشته باشد
اندازه پایه شناخته شده توسط پیاده سازی برای این انواع، مربوط به مقادیر
گزارش شده توسط فراخوانی از دریافت کنید ابزار زمانی که با system_var عملوندها
{UCHAR_MAX}، {USHORT_MAX}، {UINT_MAX}، و {ULONG_MAX} برای انواع ارابه, کوتاه, INT,
و طولانی، به ترتیب. ثابت های مشابهی وجود دارد که توسط استاندارد ISO C مورد نیاز است،
اما توسط حجم سیستم واسط POSIX.1-2008 یا این حجم از مورد نیاز نیست
POSIX.1-2008. آنها {FLT_MANT_DIG}، {DBL_MANT_DIG}، و {LDBL_MANT_DIG} برای
انواع شناور, دو برابرو طولانی دو برابر، به ترتیب. اگر اختیاری است c99 سودمندی است
توسط پیاده سازی ارائه شده و همانطور که در این جلد از POSIX.1-2008 مشخص شده است، استفاده می شود،
اینها اندازه هایی هستند که ارائه می شوند. اگر از گزینه ای استفاده شود که مشخص می کند
اندازه های مختلف برای این انواع، هیچ تضمینی وجود ندارد که od ابزار قادر است
خروجی داده های باینری توسط چنین برنامه ای را به درستی تفسیر کنید.
این حجم از POSIX.1-2008 مستلزم آن است که مقادیر عددی این طول ها باشد
به رسمیت شناخته شده توسط od سودمندی و اینکه اشکال نمادین نیز تشخیص داده شود. بنابراین، الف
برنامه منطبق همیشه می تواند به آرایه ای از بدون امضا طولانی عناصر داده
با استفاده از od -t uL.
* روش تعیین فرمت فیلد آدرس بر اساس تعیین a
شروع افست در یک فایل به طور غیر ضروری این دو را به هم گره می زند. در -A اکنون گزینه
پایه آدرس و را مشخص می کند -S گزینه یک افست شروع را مشخص می کند.
* شکستن وابستگی به ASCII ایالات متحده برای دستیابی به این امر دشوار خواهد بود
ابزار بین المللی شده به نظر نمی رسد برای آن سخت تر باشد od برای دور انداختن شخصیت ها
در محلی فعلی از آن برای ed or SED l دستورات در c تعیین کننده نوع
این کار را بدون مشکل انجام می دهد و کاملاً با تاریخچه سازگار است
پیاده سازی های c زمانی که محلی فعلی از یک ابرمجموعه استفاده میکند، کاراکتر قالببندی کنید
استاندارد ISO/IEC 646:1991 به عنوان مجموعه کد. در a مشخص کننده نوع (از BSD a
کاراکتر قالب) به عنوان وسیله ای قابل حمل برای تخلیه ASCII (یا به عبارت صحیح تر) باقی مانده است
استاندارد ISO/IEC 646:1991 (IRV)) به طوری که هدرها توسط لوحه تمثال عیسی و مریم قابل رمزگشایی بود
حتی در سیستم هایی که از استاندارد ISO/IEC 646:1991 به عنوان زیرمجموعه ای از آنها استفاده نمی کنند.
مجموعه کد پایه
استفاده از "**" به عنوان نشانه ای از ادامه کاراکتر چند بایتی در c مشخصات
خروجی بر اساس مشاهده پیاده سازی که از این روش استفاده می کند انتخاب شد. در
بایت های ادامه دهنده باید به گونه ای علامت گذاری شوند که با تکی دیگر مبهم نباشد.
کاراکتر بایت یا چند بایت
یک پیشنهاد اولیه استفاده شده است -S و −n، به ترتیب، برای -j و -ن گزینه ها در نهایت
انتخاب شد. اینها برای جلوگیری از تضاد با پیاده سازی های تاریخی تغییر کردند.
استاندارد اصلی مشخص شده است -t o2 به عنوان پیش فرض زمانی که هیچ نوع خروجی داده نشده است. این
به تغییر یافت -t oS (طول a کوتاه) برای اجرای یک ابر رایانه
که از لحاظ تاریخی از 64 بیت به عنوان پیش فرض خود استفاده می کرد (و شورت ها را 64 بیت تعریف می کرد). این
تغییر نباید بر روی برنامه های منطبق تأثیر بگذارد. نیاز به پشتیبانی از طول های 1،
2 و 4 در همان زمان اضافه شد تا به یک پیاده سازی تاریخی که هیچ
انواع داده های دو بایتی در کامپایلر C آن.
استفاده از یک نوع داده اعداد صحیح پایه در نظر گرفته شده است تا به پیاده سازی امکان انتخاب a را بدهد
اندازه کلمه معمولاً توسط برنامه های کاربردی در آن معماری استفاده می شود.
نسخههای قبلی این استاندارد امکان پیادهسازی با بایتهای غیر از هشت را فراهم میکرد
بیت است، اما این در این نسخه اصلاح شده است.
آینده جهت
همه گزینهها و رابطهای عملوند با علامت XSI ممکن است در نسخه بعدی حذف شوند.
با استفاده از خدمات onworks.net از odposix آنلاین استفاده کنید