2017-02-15 46 views
2

Logical circuitпрограмма Matlab для выходов логического рассчитать цепи

Я должен был рассчитать каждый выходной сигнал на этой логической схемы, и я не имеют никакого опыта работы с электронными.

Итак, я искал смысл символов и строю свою программу на Matlab.

Кто-нибудь может посмотреть и помочь мне, если я сделал это неправильно или указал лучший способ сделать?

Вот мой Matlab код:

for A = 0 : 1 
    for B = 0 : 1 
    for C = 0 : 1 
     for D = 0 : 1 
      if A ~= B 
       E = 1; 
      else 
       E = 0; 
      end 

      if B == 0 
       F = 1; 
      else 
       F = 0; 
      end 

      if C == 0 
       G = 1; 
      else 
       G = 0; 
      end 

      if E == 1 && F == 1 && C == 1 
       H = 1; 
      else 
       H = 0; 
      end 

      if G == 1 || D == 1 
       I = 0; 
      else 
       I = 1; 
      end 

      if H == 1 && I == 1 
       Y = 0; 
      else 
       Y = 1; 
      end 

      disp(['Se A=' num2str(A) ', B=' num2str(B) ', C=' num2str(C) ' e D=' num2str(D) ' => Y=' num2str(Y)]); 
     end 
    end 
    end 
end 

ответ

2

Ваш код будет производить правильные результаты, но вы можете использовать MATLAB's built-in functions для булевой алгебры.

for A = 0 : 1 
    for B = 0 : 1 
    for C = 0 : 1 
     for D = 0 : 1 
     Y = ~((xor(A,B) & ~B & C) & ~(~C | D)); 
     disp(['Se A=' num2str(A) ', B=' num2str(B) ', C=' num2str(C) ' e D=' num2str(D) ' => Y=' num2str(Y)]); 
     end 
    end 
    end 
end 

 Смежные вопросы

  • Нет связанных вопросов^_^