13 / 10 / 1
Регистрация: 27.03.2011
Сообщений: 164
|
||||||
1 | ||||||
приведение типов31.07.2011, 18:02. Показов 2247. Ответов 17
Метки нет (Все метки)
подскажите, что надо почитать, чтобы понять как происходит на пример усечение при приведении типов - хочу понять почему к примеру при таком приведении:
я так понимаю, что там усекаются старшие разряды числа поэтому получается число 1 хотелось бы разобраться как это все происходит, чтобы понимать почему именно 1 получилось, а не 2, 3 или 100
0
|
31.07.2011, 18:02 | |
Ответы с готовыми решениями:
17
Не требуется приведение типов при умножении типов Byte Приведение типов Приведение типов Приведение типов |
311 / 249 / 44
Регистрация: 06.12.2010
Сообщений: 527
|
||||||
31.07.2011, 18:09 | 2 | |||||
А если так? Хотя я могу чего-то не понимать
1
|
31.07.2011, 18:09 | 3 |
потому что byte - число со знаком. единица там выглядит так
0000 0001 , а минус единица - так: 1111 1111 все, что содержит единицу в самом старшем значащем бите (левом) - есть отрицательное число. в int : 1: 00000000 00000000 00000000 00000001 255: 00000000 00000000 00000000 11111111 -1: 11111111 11111111 11111111 11111111 т.е. для целого 255 еще положительное число, а когда ты обрезаешь это и рассматриваешь, как знавовый байт - это уже -1 почитай о представлении чисел в памяти машины.
1
|
13 / 10 / 1
Регистрация: 27.03.2011
Сообщений: 164
|
|
31.07.2011, 18:15 [ТС] | 4 |
ну да, именно так =)) просто забыл написать (byte)
Добавлено через 2 минуты а ссылку на какой-нибудь справочник на эту тему можно? =)
0
|
13 / 10 / 1
Регистрация: 27.03.2011
Сообщений: 164
|
|
31.07.2011, 20:07 [ТС] | 6 |
0
|
Alex_Sabaka
|
31.07.2011, 21:51
#7
|
0
|
185 / 188 / 17
Регистрация: 26.11.2010
Сообщений: 511
|
|
31.07.2011, 22:16 | 8 |
В корне неверно!
byte - беззнаковое 8-битовое число без знака. 0 выглядит так: 0000 0000 255 так: 1111 1111 Попробуем присвоить byte 256. Это в двоичной системе Код
1111 1111 + 1 __________ 1 0000 0000 Вы присваиваете 257, суть та-же.
1
|
13 / 10 / 1
Регистрация: 27.03.2011
Сообщений: 164
|
||||||
01.08.2011, 00:43 [ТС] | 9 | |||||
пасиб, разобрался вроде бы немного
написал простенькую программку
0
|
54 / 54 / 9
Регистрация: 09.11.2010
Сообщений: 120
|
||||||
01.08.2011, 00:55 | 10 | |||||
что сразу бросается в глаза
0
|
13 / 10 / 1
Регистрация: 27.03.2011
Сообщений: 164
|
|
01.08.2011, 01:07 [ТС] | 11 |
0
|
54 / 54 / 9
Регистрация: 09.11.2010
Сообщений: 120
|
|||||||||||
01.08.2011, 01:12 | 12 | ||||||||||
вопрос:
1
|
13 / 10 / 1
Регистрация: 27.03.2011
Сообщений: 164
|
|
01.08.2011, 01:36 [ТС] | 13 |
аа, точно точно, спс =)
но я имел ввиду не только это изменение, а может еще какие-нибудь? =))
0
|
1322 / 995 / 127
Регистрация: 08.12.2009
Сообщений: 1,299
|
||||||
01.08.2011, 01:48 | 14 | |||||
1
|
185 / 188 / 17
Регистрация: 26.11.2010
Сообщений: 511
|
||||||
01.08.2011, 13:23 | 15 | |||||
Когда-то писал класс для вывода числа в двоичной системе. Работает для всех целых типов (+ char)
0
|
1322 / 995 / 127
Регистрация: 08.12.2009
Сообщений: 1,299
|
|
01.08.2011, 13:28 | 16 |
1
|
185 / 188 / 17
Регистрация: 26.11.2010
Сообщений: 511
|
|
01.08.2011, 20:20 | 18 |
Бывает, не знал
Смысл в том, что нам так и так проверять, какие типы мы можем выводить в таком представлении, так что тут особой разницы и нет Но за оператор спасибо
0
|
01.08.2011, 20:20 | |
01.08.2011, 20:20 | |
Помогаю со студенческими работами здесь
18
Приведение типов Приведение типов Приведение типов Приведение типов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |