উত্তর:
info registers
সমস্ত নিবন্ধগুলি দেখায়; info registers eax
শুধু রেজিস্টার দেখায় eax
। কমান্ডটি সংক্ষিপ্ত হিসাবে করা যেতে পারেi r
info registers eax
। যদিও জিডিবি-র বিভিন্ন সংস্করণের জন্য এটি আলাদা কিনা তা আমি নিশ্চিত নই।
register read [eax]
display
। জন্য যেমন display $eax
।
আপনি যদি জিডিবিতে একটি নির্দিষ্ট রেজিস্টার মুদ্রণ করার চেষ্টা করছেন, আপনাকে% চিহ্নটি বাদ দিতে হবে। উদাহরণ স্বরূপ,
info registers eip
যদি আপনার এক্সিকিউটেবল bit৪ বিট হয় তবে রেজিস্টারগুলি আর দিয়ে শুরু হবে। ই দিয়ে তাদের শুরু করা বৈধ নয়।
info registers rip
সেগুলি সংক্ষেপে বলা যেতে পারে:
i r rip
এছাড়াও আছে:
info all-registers
তারপরে আপনি যে নিবন্ধটি আগ্রহী তার নাম পেতে পারেন - প্ল্যাটফর্ম-নির্দিষ্ট রেজিস্টারগুলি (যেমন এআরএম তে নিওন কিউ ... এর মত) জন্য খুব দরকারী।
eax
, ecx
এবং অন্যান্য মান রেজিস্টার দ্বারা লুকানো info registers
। এটি সম্ভবত গ্রহণযোগ্য উত্তর হওয়া উচিত।
জিডিবি আদেশ :
i r <register_name>
: একটি একক নিবন্ধ মুদ্রণ করুন, যেমন i r rax
,i r eax
i r <register_name_1> <register_name_2> ...
: একাধিক নিবন্ধগুলি মুদ্রণ করুন, যেমন i r rdi rsi
,i r
: ভাসমান পয়েন্ট এবং ভেক্টর রেজিস্টার (এক্সএমএম, ই মিমি, জেড এমএম) বাদে সমস্ত রেজিস্টার মুদ্রণ করুন।i r a
: সমস্ত নিবন্ধক মুদ্রণ করুন, ভাসমান পয়েন্ট এবং ভেক্টর নিবন্ধ অন্তর্ভুক্ত (x মিমি, ইয়িম, জেড এমএম)।i r f
: সমস্ত এফপিইউ ভাসমান রেজিস্টারগুলি মুদ্রণ করুন ( st0-7
এবং আরও কয়েকটি f*
)a
( all
) এবং f
( float
) এর সাথে নিবন্ধভুক্ত অন্যান্য গ্রুপগুলি এর সাথে পাওয়া যাবে:
maint print reggroups
এখানে নথিবদ্ধ হিসাবে: https://sourceware.org/gdb/current/onlinesocs/gdb/Register.html# রেজিস্টারস
টিপস :
xmm0
12 xmm15
, 128 বিট, প্রায় প্রতিটি আধুনিক মেশিনে এটি রয়েছে, তারা 1999 সালে প্রকাশিত হয়েছিল।ymm0
~ ymm15
, 256 বিট হয়, নতুন মেশিনটি সাধারণত এটি থাকে, সেগুলি 2011 এ প্রকাশিত হয়।zmm0
5 zmm31
, 512 বিট, সাধারণ পিসি সম্ভবত এটি না থাকে ( ২০১ 2016 সালের হিসাবে ), এগুলি ২০১৩ সালে প্রকাশিত হয়েছিল এবং মূলত এ পর্যন্ত সার্ভারগুলিতে ব্যবহৃত হয়।p $eax
জিডিবি 7.7.1 হিসাবে কাজ করে
জিডিবি 7.7.১ হিসাবে, আপনি যে কমান্ডটি চেষ্টা করেছেন তা কাজ করে:
set $eax = 0
p $eax
# $1 = 0
set $eax = 1
p $eax
# $2 = 1
এই সিনট্যাক্সটি বিভিন্ন ইউনিয়নের সদস্যদের মধ্যে যেমন নির্বাচন করতে ব্যবহৃত হয় যেমন এআরএম ভাসমান পয়েন্ট রেজিস্টারগুলির জন্য যা ভাসমান পয়েন্ট বা পূর্ণসংখ্যার হতে পারে:
p $s0.f
p $s0.u
ডক্স থেকে :
পূর্বনির্ধারিত মেশিন-নির্দিষ্ট রেজিস্টার্ড নামগুলির মধ্যে একটি না হলে 'by' এর আগে থাকা কোনও নামই সুবিধামত চলকটির জন্য ব্যবহার করা যেতে পারে।
এবং :
আপনি '$' দিয়ে শুরু হওয়া নামের সাথে ভেরিয়েবল হিসাবে মেশিনের নিবন্ধের বিষয়বস্তুগুলিকে উল্লেখ করতে পারেন express প্রতিটি মেশিনের জন্য রেজিস্টারের নাম আলাদা; আপনার মেশিনে ব্যবহৃত নামগুলি দেখতে তথ্য নিবন্ধগুলি ব্যবহার করুন।
তবে এখন পর্যন্ত নিয়ন্ত্রণ রেজিস্টারগুলিতে আমার খুব ভাগ্য হয়নি: ওএসডিভ 2012 http://f.osdev.org/viewtopic.php?f=1&t=25968 || 2005 এর বৈশিষ্ট্যটির অনুরোধ https://www.sourceware.org/ML/gdb/2005-03/msg00158.html || alt.lang.asm 2013 https://groups.google.com/forum/#!topic/alt.lang.asm/JC7YS3Wu31I
এআরএম ভাসমান পয়েন্ট রেজিস্টার
দেখুন: /reverseengineering/8992/floating-Point-register-on-arm/20623#20623
$
সিনট্যাক্সটি দিয়ে এক্সপ্রেশনগুলিতে নিবন্ধগুলি ব্যবহার করতে সক্ষম হওয়ায় দুর্দান্ত।
layout reg
আগের নির্দেশ অনুসারে পরিবর্তিত এক (গুলি) টি হাইলাইট করে সমস্ত পূর্ণসংখ্যা এবং পতাকা নিবন্ধগুলির একটি সারণী প্রদর্শন করতে জিডিবি ব্যবহার করুন । উদাহরণস্বরূপ stackoverflow.com/tags/x86/info দেখুন ।