Se dois microcontroladores diferentes que utilizam a mesma arquitetura de conjunto de instruções executarem o mesmo código em Assembly, então, esses microcontroladores
- A)possuirão o mesmo clock.
Errada, porque microcontroladores com a mesma ISA podem ter frequências de clock diferentes.
- B)executarão o mesmo número de instruções.
Certa, pois o mesmo código em Assembly gera a mesma sequência lógica de instruções executadas.
- C)possuirão o mesmo período de ciclo de clock.
Errada, porque o período de clock é inverso da frequência e pode variar entre microcontroladores.
- D)possuirão o mesmo tempo de execução.
Errada, porque o tempo de execução depende de clock, CPI e implementação interna, não só da ISA.
- E)possuirão a mesma média de clock por instrução.
Errada, porque a média de clock por instrução não é necessariamente igual entre microcontroladores diferentes.
Gabarito: B
Quando dois microcontroladores usam a mesma arquitetura de conjunto de instruções, eles entendem as mesmas ordens em Assembly. Em outras palavras, o código montado para essa ISA vai virar a mesma sequência de instruções, desde que seja o mesmo programa e a mesma lógica. Isso não significa, porém, que tudo ao redor seja igual: clock, ciclo, desempenho e tempo total podem mudar bastante de um chip para outro. O ponto-chave aqui é separar "quantidade de instruções executadas" de "velocidade de execução". A mesma rotina pode rodar em processadores diferentes com o mesmo conjunto de instruções, mas um pode ter clock maior, pipeline melhor ou ciclos por instrução diferentes. Resultado: a contagem de instruções pode ser a mesma, mas o tempo gasto não precisa ser. Por isso o gabarito é a letra B. Se o mesmo código em Assembly é executado, a sequência lógica do programa continua sendo a mesma, então o número de instruções executadas será o mesmo. Já clock, período de clock, tempo total e média de clock por instrução dependem da implementação do microcontrolador e não apenas da arquitetura da ISA.