<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://stationeers-wiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=93.209.203.39</id>
	<title>Stationeers Community Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://stationeers-wiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=93.209.203.39"/>
	<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/Special:Contributions/93.209.203.39"/>
	<updated>2026-04-05T11:02:56Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=User:Carsten_Milkau/NOT_Gate&amp;diff=16118</id>
		<title>User:Carsten Milkau/NOT Gate</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=User:Carsten_Milkau/NOT_Gate&amp;diff=16118"/>
		<updated>2023-07-15T04:00:59Z</updated>

		<summary type="html">&lt;p&gt;93.209.203.39: /* Implementation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= NOT Gate =&lt;br /&gt;
&lt;br /&gt;
A NOT gate, sometimes also called &#039;&#039;inverter&#039;&#039;, is a circuit that outputs the value that was not input. It has a single input and output, and each can only take one of two pre-defined values (typically 0 and 1). Whatever the input value is selected, the output value will be the other of the two.&lt;br /&gt;
&lt;br /&gt;
== Definition ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ value table&lt;br /&gt;
|-&lt;br /&gt;
!&#039;&#039;&#039;inputs&#039;&#039;&#039; || &#039;&#039;&#039;outputs&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
!x || y&lt;br /&gt;
|-&lt;br /&gt;
|0||1&lt;br /&gt;
|-&lt;br /&gt;
|1||0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Connectors ===&lt;br /&gt;
&lt;br /&gt;
* Input x: one of two values (0 or 1)&lt;br /&gt;
* Output y: the other of the two values&lt;br /&gt;
&lt;br /&gt;
== Implementation ==&lt;br /&gt;
&lt;br /&gt;
NOT gates can often be avoided by modifying the circuit. For instance, an [[User:Carsten Milkau/OR Gate|OR Gate]] with two NOT gates connected to its inputs and outputs can always be replaced by an AND gate with just one NOT gate connected.&lt;br /&gt;
&lt;br /&gt;
=== Single Block ===&lt;br /&gt;
&lt;br /&gt;
[[File:CompareUnit.png|thumb]]&lt;br /&gt;
&lt;br /&gt;
Use the Gate Unit, set it to Nor and both inputs to the same Logic Reader.&lt;br /&gt;
&lt;br /&gt;
=== Using A Less-Than Comparator ===&lt;br /&gt;
&lt;br /&gt;
[[File:CompareUnit.png|thumb]]&lt;br /&gt;
&lt;br /&gt;
If you have a circuit available (e.g. a constant memory) that has a value &#039;&#039;b&#039;&#039; known to stay between 0 and 1 (but not 0), you can turn a [[Kit (Logic Processor)#Compare Unit|Compare Unit]] into a logic NOT gate by comparing the input &#039;&#039;x&#039;&#039; to &#039;&#039;b&#039;&#039;, i.e.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;y = (x &amp;lt; b)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ circuit setup&lt;br /&gt;
|-&lt;br /&gt;
! unit || unit type || connector/setting || source / value&lt;br /&gt;
|-&lt;br /&gt;
|compare 1 || Compare Unit || Input 1 || x &#039;&#039;&#039;(input)&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| || || Input 2 || &#039;&#039;b&#039;&#039; (constant or bounded value)&lt;br /&gt;
|-&lt;br /&gt;
| || || Operation Selector || Lesser&lt;br /&gt;
|-&lt;br /&gt;
| || || Output || y &#039;&#039;&#039;(output)&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Using An Equality Comparator ===&lt;br /&gt;
&lt;br /&gt;
[[File:CompareUnit.png|thumb]]&lt;br /&gt;
&lt;br /&gt;
If you have a circuit output available that is known to be zero when the NOT gate is used (e.g. a constant memory), you can turn a [[Kit (Logic Processor)#Compare Unit|Compare Unit]] into a logic NOT gate by comparing the input &#039;&#039;x&#039;&#039; to &#039;&#039;0&#039;&#039;, i.e.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;y = (x = 0)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ circuit setup&lt;br /&gt;
|-&lt;br /&gt;
! unit || unit type || connector/setting || source / value&lt;br /&gt;
|-&lt;br /&gt;
|compare 1 || Compare Unit || Input 1 || x &#039;&#039;&#039;(input)&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| || || Input 2 || 0 (constant)&lt;br /&gt;
|-&lt;br /&gt;
| || || Operation Selector || Equals&lt;br /&gt;
|-&lt;br /&gt;
| || || Output || y &#039;&#039;&#039;(output)&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Using Subtraction ===&lt;br /&gt;
&lt;br /&gt;
[[File:MathUnit.png|thumb]]&lt;br /&gt;
&lt;br /&gt;
If you do not use 0 and 1 as the two possible input values of the inverter, you can use subtraction for implementation. In this case, you need a constant that is exactly the mean of the two input values, i.e.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;y = (m - x)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where m = (a + b)/2 is the mean of the two allowed input values, (called &#039;&#039;a&#039;&#039; and &#039;&#039;b&#039;&#039; here).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Circuit setup&lt;br /&gt;
|-&lt;br /&gt;
! unit || unit type  || connector/setting || source/value&lt;br /&gt;
|-&lt;br /&gt;
| math 1 || [[Kit (Logic Processor)#Math Unit|Math Unit]] || Input 1 || x &#039;&#039;&#039;(input)&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| || || Input 2 || m (constant, see above)&lt;br /&gt;
|-&lt;br /&gt;
| || || Operation || Subtract&lt;br /&gt;
|-&lt;br /&gt;
| || || Output || y &#039;&#039;&#039;(output)&#039;&#039;&#039;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>93.209.203.39</name></author>
	</entry>
</feed>