mirror of
https://github.com/mytechnotalent/Embedded-Hacking.git
synced 2026-07-06 12:37:54 +02:00
74 lines
3.8 KiB
XML
74 lines
3.8 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 800">
|
|
<style>
|
|
.bg{fill:#0a0a0f}.pnl{fill:#12121a;stroke:#1a1a2e}.hdr{fill:#12121a}
|
|
.title{font:bold 42px 'Courier New',monospace;fill:#00ff41}
|
|
.sub{font:bold 28px 'Courier New',monospace;fill:#00d4ff}
|
|
.txt{font:24px 'Courier New',monospace;fill:#c0c0c0}
|
|
.dim{font:20px 'Courier New',monospace;fill:#888}
|
|
.grn{font:bold 24px 'Courier New',monospace;fill:#00ff41}
|
|
.red{font:bold 24px 'Courier New',monospace;fill:#ff0040}
|
|
.cyn{font:bold 24px 'Courier New',monospace;fill:#00d4ff}
|
|
.amb{font:bold 24px 'Courier New',monospace;fill:#ffaa00}
|
|
.badge{stroke:#00ff41;rx:14}
|
|
</style>
|
|
<rect class="bg" width="1200" height="800"/>
|
|
<rect class="hdr" x="0" y="0" width="1200" height="100" rx="0"/>
|
|
<text class="title" x="600" y="52" text-anchor="middle">C Operators Overview</text>
|
|
<text class="dim" x="600" y="88" text-anchor="middle">Six Types of Operators in C</text>
|
|
|
|
<!-- Top Row -->
|
|
<rect class="pnl" x="30" y="110" width="370" height="195" rx="8"/>
|
|
<text class="amb" x="50" y="145">Arithmetic</text>
|
|
<rect x="50" y="160" width="330" height="120" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text class="txt" x="70" y="190">+ - * / %</text>
|
|
<text class="dim" x="70" y="220">Math operations</text>
|
|
<text class="grn" x="70" y="250">5 * 10 = 50</text>
|
|
|
|
<rect class="pnl" x="415" y="110" width="370" height="195" rx="8"/>
|
|
<text class="amb" x="435" y="145">Increment</text>
|
|
<rect x="435" y="160" width="330" height="120" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text class="txt" x="455" y="190">x++ ++x x--</text>
|
|
<text class="dim" x="455" y="220">Add/subtract by 1</text>
|
|
<text class="grn" x="455" y="250">x++ returns old val</text>
|
|
|
|
<rect class="pnl" x="800" y="110" width="370" height="195" rx="8"/>
|
|
<text class="amb" x="820" y="145">Relational</text>
|
|
<rect x="820" y="160" width="330" height="120" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text class="txt" x="840" y="190">> < >= <= == !=</text>
|
|
<text class="dim" x="840" y="220">Compare values</text>
|
|
<text class="grn" x="840" y="250">(6 > 10) = false</text>
|
|
|
|
<!-- Bottom Row -->
|
|
<rect class="pnl" x="30" y="320" width="370" height="195" rx="8"/>
|
|
<text class="amb" x="50" y="355">Logical</text>
|
|
<rect x="50" y="370" width="330" height="120" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text class="txt" x="70" y="400">&& || !</text>
|
|
<text class="dim" x="70" y="430">Combine conditions</text>
|
|
<text class="grn" x="70" y="460">AND, OR, NOT</text>
|
|
|
|
<rect class="pnl" x="415" y="320" width="370" height="195" rx="8"/>
|
|
<text class="amb" x="435" y="355">Bitwise</text>
|
|
<rect x="435" y="370" width="330" height="120" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text class="txt" x="455" y="400"><< >> & | ^ ~</text>
|
|
<text class="dim" x="455" y="430">Manipulate bits</text>
|
|
<text class="grn" x="455" y="460">6 << 1 = 12</text>
|
|
|
|
<rect class="pnl" x="800" y="320" width="370" height="195" rx="8"/>
|
|
<text class="amb" x="820" y="355">Assignment</text>
|
|
<rect x="820" y="370" width="330" height="120" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text class="txt" x="840" y="400">+= -= *= /=</text>
|
|
<text class="dim" x="840" y="430">Assign and modify</text>
|
|
<text class="grn" x="840" y="460">x += 5 (x=x+5)</text>
|
|
|
|
<!-- Bottom: Context -->
|
|
<rect class="pnl" x="30" y="530" width="1140" height="120" rx="8"/>
|
|
<text class="sub" x="50" y="565">This Week's Program</text>
|
|
<text class="txt" x="50" y="600">0x001a_operators.c demonstrates all 6 types</text>
|
|
<text class="dim" x="50" y="630">DHT11 temperature/humidity sensor + operator calculations</text>
|
|
|
|
<!-- Key insight -->
|
|
<rect class="pnl" x="30" y="665" width="1140" height="80" rx="8"/>
|
|
<text class="red" x="50" y="700">KEY:</text>
|
|
<text class="txt" x="130" y="700">Compiler pre-computes constant expressions</text>
|
|
<text class="dim" x="50" y="725">In the binary, most operators become immediate values</text>
|
|
</svg> |