Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Comando If (1/2)<br />
Exemplos de if (2/2)<br />
if_statement ::=<br />
if condition then<br />
sequence_of_statements<br />
{ elsif condition then -- 0 ou nocorrências<br />
sequence_of_statements }<br />
[ else -- 0 ou 1 ocorrência<br />
sequence_of_statements ]<br />
end if ;<br />
IMPORTANTE<br />
• teste de borda de subida: if clock'event and clock='1' then …<br />
• teste de borda de descida: if clock'event and clock='0' then …<br />
• a seqüência na qual estão definidos os ´ifs´ implica na prioridade das<br />
ações.<br />
– Exemplo onde a atribuição à variável T tem maior prioridade:<br />
if (x) then T:=A; end if;<br />
if (y) then T:=B; end if;<br />
if (z) then T:=C; end if;<br />
– Qual a implementação em hardware da seguinte seqüência de<br />
comandos ?<br />
process(A, B, control)<br />
begin<br />
if( control=’1’) then<br />
else<br />
end if;<br />
end process;<br />
Z <br />
statements for red;<br />
when green | blue =><br />
statements for green or blue;<br />
when orange to turquoise =><br />
statements for these colours;<br />
end case;<br />
case opcode is<br />
when X"00" => perform_add;<br />
when X"01" => perform_subtract;<br />
when others => signal_illegal_opcode;<br />
end case<br />
-- escolha simples<br />
-- ou<br />
-- intervalo<br />
Professor Fernando Moraes / Ney Calazans<br />
63<br />
Professor Fernando Moraes / Ney Calazans<br />
64<br />
16