Middle
Nega Integer.MAX_VALUE plus one Integer.MIN_VALUE ga teng?
sobes.tech AI
AIdan javob
Integer.MAX_VALUE — bu Java'da 32-bitli imzo bilan belgilangan butun turining maksimal qiymati. Bu 2<sup>31</sup> - 1 ga teng.
Xotirada tasvir:
Integer.MAX_VALUE: 0111...1111 (31 ta bir)
Bir qo'shilganda, to'ldirish yuzaga keladi:
Integer.MAX_VALUE + 1:
0111...1111
+ 0000...0001
------------
1000...0000
Eng yuqori bit bir bo'lib, bu belgilangan ta'rifda manfiy sonni ko'rsatadi. Java'da ikkilamchi to'ldirish (manfiy sonlarning standart ta'rifi) uchun, 1000...0000 32 bit bilan tasvirlanadigan eng kichik manfiy son, ya'ni Integer.MIN_VALUE (-2<sup>31</sup>) ga mos keladi.
Bu xatti-harakat Java va ko'plab boshqa tillarda belgilangan butun turlar uchun standart bo'lib, ikkilamchi to'ldirishdan foydalanadi.