
como podemos desenhar circuitos lógicos com 128 entradas sem mostrar todas as entradas, isso significa que podemos desenhar um diagrama lógico mostrando 3 ou 4 bits como entrada, mas como podemos desenhar 128 entradas com rotulagem de 1 ou 2 entradas e outras serão assim por diante até 127 (sem rotulagem) e o 128º bit deve ser rotulado.
Responder1
Em primeiro lugar, seja bem-vindo ao TeX.SE. Da próxima vez, mostre-nos o que você tentou até agora. Geralmente não preferimos do-it-for-me
classes de perguntas.
Para começar sua resposta, você pode conseguir isso facilmente com circuits
e positioning
dentro de tikzlibrary
.
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{circuits.logic.US,circuits.logic.IEC, positioning}
\begin{document}
\begin{tikzpicture}[minimum height=0.75cm]
\node[and gate US, draw,logic gate inputs=nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn] (A) {};
\foreach \a in {1,...,128}
\draw (A.input \a) -- ([xshift=-2cm]A.input \a);
\draw (A.output) -- ([xshift=2cm]A.output);
% naming the nodes
\node [left = 2.1cm of A.input 1] (n1) {1};
\node [left = 2.1cm of A.input 2] (n2) {2};
\node [left = 2.1cm of A.input 126] (n3) {126};
\end{tikzpicture}
\end{document}
obter:
Porém, com ciruittikz
, vale a pena observar:
É possível implementar múltiplas portas lógicas de entrada com o circuitikz?
Responder2
Acho que, do ponto de vista da legibilidade, qualquer coisa com 128 portas é demais. Se você usar a nova versão (não lançada) de circuitikz
(você pode encontrar uminstantâneo na página do github) você está limitado a (ainda ilegível na minha opinião) 16 pinos.
Eu faria algo parecido com o seguinte, e marcaria textualmente os fios que vão para o grande ou com algum tipo de símbolo... assim
\documentclass[border=10pt]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikzgit}
\begin{document}
\begin{circuitikz}[
]
\ctikzset{logic ports origin=center}
\draw(0,0) node[dipchip, num pins=14, no topmark,
external pins width=0, hide numbers](A){};
\foreach \i/\l in {1/1, 2/2, 7/128}
\draw (A.bpin \i) node[right, font=\tiny]{\l} -- ++(-0.5,0) coordinate(my pin \i);
\path (A.bpin 4) node[left]{$\vdots$};
\draw (A.bpin 11) node[above right, font=\tiny]{out} -- ++(0.5,0);
\path (A.center) node [american and port]{IC1};
\draw (my pin 1) -- ++(-0.5,0) node[american xnor port, anchor=out]{};
\draw (-4,-1) node[american xnor port](B){};
\draw [->] (B.out) -- ++(0.5,0) node[right, align=left]{to IC1\\ pin 36};
\end{circuitikz}
\end{document}