ответ: 1количество в процессоре является важным фактором, влияющим на его производительность. как было показано ранее, в процессоре 8088 на выполнение одной инструкции требовалось 15 циклов тактовой частоты. а чтобы выполнить одну 16-битную операцию, уходило и вовсе порядка 80 циклов. так был устроен умножитель алу этого процессора. чем больше и чем мощнее умножитель алу, тем больше всего успевает сделать процессор за один свой такт.
многие поддерживают технологию конвейеризации. в рамках конвейерной архитектуры происходит частичное наложение выполняемых инструкций друг на друга. инструкция может требовать на свое выполнение все тех же пяти циклов, но если процессором одновременно обрабатываются пять команд (на разных этапах завершенности), то в среднем на выполнение одной инструкции потребуется один цикл тактовой частоты процессора.
во многих современных процессорах дешифратор команд не один. и каждый из них поддерживает конвейеризацию. это позволяет выполнять более одной инструкции за один такт процессора. для реализации этой технологии требуется невероятное множество . тут есть все ответи
объяснение:
если числа изначально в 10 системе:
array = list(map(int, input().split())); res = 0; res1 = 0 #ввод и переменные
for i in array:
if len(bin(i)[2:]) == 4: res += i; res1 += 1 #пробегаемся по массиву и смотрим подходит ли элемент в двоичном представлении
try:
print(res / res1) #если не было подходящих будет деление на 0, поэтому я использовал try except
except: print(0) #ну если все же подходящих не было выводим 0
если уже в 2:
array = list(map(int, input().split())); res = 0; res1 = 0
for i in array:
if len(str(i)) == 4: res += i; res1 += 1
try:
print(res / res1)
except: print(0)
Вроде бы как-то так