1) Один байт = 8 бит, максимальное число 2^8 - 1 = 255, если числа без знака. Для знаковых чисел старший бит отводится под знак числа, следовательно, минимальное число = - 2^7 - 1 = - 127, максимальное число = + 127 2) Число 1607, ячейка двухбайтовая, один бит под знак, следовательно, под число отводится 15 бит, в двоичном представлении 1607(10) = 11001000111(2), дополняем до 16 бит, старший бит - знаковый - нулевой, так как число положительное = 0000011001000111(2) - это двоичное представление в двухбайтовой ячейке, чтобы получить шестнадцатиричное представление, разбиваем число справа - налево по 4 бита 0000 0110 0100 0111 и записываем в шестнадцатиричном виде 0111(2) = 7(16) 0100(2) = 4(16) 0110(2) =6(16) 0000(2) = 0(16) 1607(16) = 0647(16) или без старшего не значащего нуля = 647(16) 3) для получения дополнительного кода числа, находят обратное число, или инверсию числа, для этого каждый бит числа изменяют на противоположный, 1 на 0, 0 на 1 105(10) = 1101001(2) - это и есть дополнительный код числа - 105, т.е. дополнительным кодом числа (- а) будет число а. Найдем дополнительный код в однобайтовой ячейке числа 105(10) = 01101001(2), а) находим обратное 01101001(2) ->(обратное) ->10010110(2) б) дополнительный код-> обратный код + 1 ->(дополнительный)->10010111(2), а это число - 105 потому, что отрицательные числа представляются в дополнительном коде. Если для числа - 105 найти дополнительный код, то получим число 105 10010111(2)->(дополнительный)->01101000+1->01101001 = 69(16) = 16*6+9 = 96+9 = 105
Б) Пусть aК(n) - количество строк длины n, которые оканчиваются на К, и aA(n) - количество строк длины n, которые оканчиваются на А. Очевидно, aK(1) = aA(1) = 1.
Посчитаем, чему равны aK(n + 1) и aA(n + 1).
К можно дописать к любой строке, которая кончается на А. Поэтому aK(n + 1) = aA(n)A можно приписать вообще к любой строке. Значит, aA(n + 1) = aA(n) + aK(n)
Общее количество строк длины n > 2 равно a(n) = aK(n) + aA(n) = aA(n - 1) + a(n - 1) = a(n - 1) + a(n - 2).
Вычисляем значения a(n):
a(1) = 2
a(2) = 3 (АА, АК, КА)
a(3) = 2 + 3 = 5
a(4) = 3 + 5 = 8
a(5) = 5 + 8 = 13
a(6) = 8 + 13 = 21
a(7) = 13 + 21 = 34
a(8) = 21 + 34 = 55
a(9) = 34 + 55 = 89
В последовательности можно увидеть известную последовательность Фибоначчи.
В) Аналогично, введем aA(n), aК(n), aKK(n) - количество строк, оканчивающихся на А, ровно одно К и ровно два К. Общее количество строк будем так же обозначать как a(n).
aA(n + 1) = a(n)
aK(n + 2) = aA(n + 1) = a(n)
aKK(n + 3) = aK(n + 2) = a(n)
Итого, при n > 3 выполнено a(n) = a(n - 1) + a(n - 2) + a(n - 3).
a(1) = 2
a(2) = 4
a(3) = 7 (всего строк длины три 8, не подходит ККК).
a(4) = 2 + 4 + 7 = 13
a(5) = 4 + 7 + 13 = 24
a(6) = 7 + 13 + 24 = 44
a(7) = 13 + 24 + 44 = 81
a(8) = 24 + 44 + 81 = 149
a(9) = 44 + 81 + 149 = 274
a(10) = 81 + 149 + 274 = 504
Если в случае возникла последовательность Фибоначчи, то тут так называемая последовательность Трибоначчи - каждый новый член равен сумме трёх предыдущих
= - 127, максимальное число = + 127
2) Число 1607, ячейка двухбайтовая, один бит под знак, следовательно, под число отводится 15 бит, в двоичном представлении 1607(10) = 11001000111(2), дополняем до 16 бит, старший бит - знаковый - нулевой, так как число положительное
= 0000011001000111(2) - это двоичное представление в двухбайтовой ячейке, чтобы получить шестнадцатиричное представление, разбиваем число справа - налево по 4 бита
0000 0110 0100 0111 и записываем в шестнадцатиричном виде
0111(2) = 7(16) 0100(2) = 4(16) 0110(2) =6(16) 0000(2) = 0(16)
1607(16) = 0647(16) или без старшего не значащего нуля = 647(16)
3) для получения дополнительного кода числа, находят обратное число, или инверсию числа,
для этого каждый бит числа изменяют на противоположный, 1 на 0, 0 на 1
105(10) = 1101001(2) - это и есть дополнительный код числа - 105, т.е. дополнительным кодом
числа (- а) будет число а.
Найдем дополнительный код в однобайтовой ячейке числа 105(10) = 01101001(2),
а) находим обратное 01101001(2) ->(обратное) ->10010110(2)
б) дополнительный код-> обратный код + 1 ->(дополнительный)->10010111(2), а это число - 105
потому, что отрицательные числа представляются в дополнительном коде.
Если для числа - 105 найти дополнительный код, то получим число 105
10010111(2)->(дополнительный)->01101000+1->01101001 = 69(16) = 16*6+9 = 96+9 = 105
89, 504
Объяснение:
Б) Пусть aК(n) - количество строк длины n, которые оканчиваются на К, и aA(n) - количество строк длины n, которые оканчиваются на А. Очевидно, aK(1) = aA(1) = 1.
Посчитаем, чему равны aK(n + 1) и aA(n + 1).
К можно дописать к любой строке, которая кончается на А. Поэтому aK(n + 1) = aA(n)A можно приписать вообще к любой строке. Значит, aA(n + 1) = aA(n) + aK(n)Общее количество строк длины n > 2 равно a(n) = aK(n) + aA(n) = aA(n - 1) + a(n - 1) = a(n - 1) + a(n - 2).
Вычисляем значения a(n):
a(1) = 2
a(2) = 3 (АА, АК, КА)
a(3) = 2 + 3 = 5
a(4) = 3 + 5 = 8
a(5) = 5 + 8 = 13
a(6) = 8 + 13 = 21
a(7) = 13 + 21 = 34
a(8) = 21 + 34 = 55
a(9) = 34 + 55 = 89
В последовательности можно увидеть известную последовательность Фибоначчи.
В) Аналогично, введем aA(n), aК(n), aKK(n) - количество строк, оканчивающихся на А, ровно одно К и ровно два К. Общее количество строк будем так же обозначать как a(n).
aA(n + 1) = a(n)
aK(n + 2) = aA(n + 1) = a(n)
aKK(n + 3) = aK(n + 2) = a(n)
Итого, при n > 3 выполнено a(n) = a(n - 1) + a(n - 2) + a(n - 3).
a(1) = 2
a(2) = 4
a(3) = 7 (всего строк длины три 8, не подходит ККК).
a(4) = 2 + 4 + 7 = 13
a(5) = 4 + 7 + 13 = 24
a(6) = 7 + 13 + 24 = 44
a(7) = 13 + 24 + 44 = 81
a(8) = 24 + 44 + 81 = 149
a(9) = 44 + 81 + 149 = 274
a(10) = 81 + 149 + 274 = 504
Если в случае возникла последовательность Фибоначчи, то тут так называемая последовательность Трибоначчи - каждый новый член равен сумме трёх предыдущих