diff --git a/config.yaml b/config.yaml index e6940bd..fb785a1 100644 --- a/config.yaml +++ b/config.yaml @@ -12,6 +12,9 @@ outputs: - RSS - JSON # necessary for search +ignoreFiles: + - "notes/drafts/_Templates" + taxonomies: tag: tags diff --git a/content/notes/.obsidian/graph.json b/content/notes/.obsidian/graph.json index 9fe3444..2201aeb 100644 --- a/content/notes/.obsidian/graph.json +++ b/content/notes/.obsidian/graph.json @@ -6,22 +6,7 @@ "hideUnresolved": false, "showOrphans": true, "collapse-color-groups": false, - "colorGroups": [ - { - "query": "path:Notion ", - "color": { - "a": 1, - "rgb": 14701138 - } - }, - { - "query": "path:temp ", - "color": { - "a": 1, - "rgb": 16711680 - } - } - ], + "colorGroups": [], "collapse-display": false, "showArrow": false, "textFadeMultiplier": 0, @@ -32,6 +17,6 @@ "repelStrength": 10, "linkStrength": 1, "linkDistance": 250, - "scale": 0.4275731589927159, + "scale": 0.12668834340524918, "close": true } \ No newline at end of file diff --git a/content/notes/.obsidian/templates.json b/content/notes/.obsidian/templates.json index 1971e34..6b4528c 100644 --- a/content/notes/.obsidian/templates.json +++ b/content/notes/.obsidian/templates.json @@ -1,3 +1,3 @@ { - "folder": "Templates" + "folder": "drafts/_Templates" } \ No newline at end of file diff --git a/content/notes/.obsidian/workspace.json b/content/notes/.obsidian/workspace.json index b64ad90..9835a32 100644 --- a/content/notes/.obsidian/workspace.json +++ b/content/notes/.obsidian/workspace.json @@ -8,17 +8,17 @@ "type": "tabs", "children": [ { - "id": "560e779e6f4e85a3", + "id": "41d42d82984d27da", "type": "leaf", "state": { "type": "markdown", "state": { - "file": "index/index.md", + "file": "drafts/lua.md", "mode": "source", "source": false }, "icon": "lucide-file", - "title": "index" + "title": "lua" } } ] @@ -159,17 +159,26 @@ "state": { "type": "outline", "state": { - "file": "Notion/Memory.md", "followCursor": false, "showSearch": false, "searchQuery": "" }, "icon": "lucide-list", - "title": "Outline of Memory" + "title": "Outline" + } + }, + { + "id": "30cd499d012a4255", + "type": "leaf", + "state": { + "type": "advanced-tables-toolbar", + "state": {}, + "icon": "spreadsheet", + "title": "Advanced Tables" } } ], - "currentTab": 2 + "currentTab": 3 } ], "direction": "horizontal", @@ -185,57 +194,56 @@ "command-palette:Open command palette": false, "obsidian-importer:Open Importer": false, "table-editor-obsidian:Advanced Tables Toolbar": false, - "obsidian-local-images-plus:Local Images Plus 0.16.3\r\nLocalize attachments (plugin folder)": false, - "homepage:Open homepage": false + "obsidian-local-images-plus:Local Images Plus 0.16.3\r\nLocalize attachments (plugin folder)": false } }, - "active": "560e779e6f4e85a3", + "active": "f7c232306fce05bc", "lastOpenFiles": [ - "binary-operations/index.md", + "drafts/lua.md", + "drafts/linux_architecture/index.md", "index/index.md", - "transistors/index.md", - "notes/transistors.md", - "notes", - "Templates/base.md", - "Untitled.md", - "html.md", - "Templates", + "Untitled", + "TODO.md", + "temp/pngwing.com.png", + "temp/nix.svg", + "temp/image93.png", + "temp/windows-11-icon-logo-png_seeklogo-406208.png", + "temp/js.png", + "ready/python.md", + "ready/http.md", + "ready/ssh.md", + "ready/pass.md", + "ready/wsl2.md", + "ready/https-ssl-certs.md", + "drafts/macOS.md", + "ready/html.md", + "ready/irc.md", + "ready/encryption.md", + "ready/flask.md", + "ready/compiling.md", + "ready/git.md", + "ready/diodes.md", + "ready/gdb.md", + "ready/c-snippets.md", + "ready/c-language.md", + "drafts/assembly.md", + "ready/algorithms-and-data/index.md", + "temp/freebsd.png", + "temp/py.webp", + "ready/binary-operations/index.md", + "ready/binary-operations/image75.png", + "ready/binary-operations/image74.png", + "ready/binary-operations/image68.png", + "drafts/linux/index.md", + "ready/tmux/index.md", + "drafts", + "ready/databases", + "ready/logic_gates", + "ready/memory", + "ready", + "ready/cpu_architecture", "index", - "Notion/Databases SQL.md", - "git.md", - "Notion/Memory.md", - "Notion/CPU Architecture.md", - "macOS.md", - "lua.md", - "tmux/index.md", - "Notion/Text Editor NVIM.md", - "tmux/tmux_design.png", - "tmux", - "transistors/image4.png", - "transistors/image3.png", - "transistors/image2.png", - "transistors/image1.png", - "transistors", - "assembly.md", - "Notion/Untitled.md", - "linux/index.md", - "linux", - "pass.md", - "flask.md", - "https-ssl-certs.md", - "encryption.md", - "http.md", - "python.md", - "wsl2.md", - "irc.md", - "EXT2.png", - "image 96.png", - "image 95.png", - "image 94.png", - "pngwing.com.png", - "Notion2", - "binary-operations", - "algorithms-and-data", - "C language" + "drafts/_Templates", + "ready/tmux" ] } \ No newline at end of file diff --git a/content/notes/Notion/Debug-Repair Tools.md b/content/notes/Notion/Debug-Repair Tools.md deleted file mode 100644 index e30deab..0000000 --- a/content/notes/Notion/Debug-Repair Tools.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -Status: Planned -Created by: Trude EH -tags: - - notes - - tools -author: TrudeEH -draft: false -searchHidden: false -showToc: true -title: Debug/Repair Tools ---- -Scrcpy -scrcpy —otg -scrcpy - -ADB -adb kill-server diff --git a/content/notes/Notion/JavaScript.md b/content/notes/Notion/JavaScript.md deleted file mode 100644 index 0a2d343..0000000 --- a/content/notes/Notion/JavaScript.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -Status: Planned -Created by: Trude EH -tags: - - notes - - programming - - web -author: TrudeEH -draft: false -searchHidden: false -showToc: true -title: JavaScript ---- diff --git a/content/notes/binary-operations/index.md b/content/notes/binary-operations/index.md deleted file mode 100644 index 74e4a96..0000000 --- a/content/notes/binary-operations/index.md +++ /dev/null @@ -1,392 +0,0 @@ ---- -tags: - - computer-science - - notes -author: TrudeEH -draft: true -showToc: true -title: Binary Operations ---- -#todo -## Binary - -Binary is a base-2 numeral system: A simple way to represent numbers using only two states. - -|Binary|Decimal|Hexadecimal| -|---|---|---| -|0000|00|00| -|0001|01|01| -|0010|02|02| -|0011|03|03| -|0100|04|04| -|0101|05|05| -|0110|06|06| -|0111|07|07| -|1000|08|08| -|1001|09|09| -|1010|10|0A| -|1011|11|0B| -|1100|12|0C| -|1101|13|0D| -|1110|14|0E| -|1111|15|0F| - -![Binary Calculations](binarycalc.png) - -### Speaking Binary - -> The information in this section is non-standard, and mostly a curiosity. - -You may struggle to pronounce large binary numbers, as saying a long list of 0s and 1s is very inefficient. Instead, we can do something like this: - -![speaking binary](sb1.png) - -To be able to say any binary number, list the number, starting by the last digit: - -![speaking binary](sb2.png) - -And pronounce the ones that correspond to a `1` bit. - -![speaking binary](sb3.png) - -#### Pronounce a Binary Number at a Glance - -1. Break the number at its largest pair of bits. - - ![speaking binary](sb4.png) - -2. Represent the left and right sides. - - ![speaking binary](sb5.png) - - In this example, there is a `two` in the order of magnitude `hex`. - -3. Continue to represent the left and right sides recursively. - - ![speaking binary](sb6.png) - - The last number is `four`. - - -#### Decode a Spoken Binary Number - -Starting with `two hex four`: - -1. Find the largest power of two. - - ![speaking binary](sb7.png) - -2. The number is equal to the left side, times the order of magnitude, plus the right side. - - ![speaking binary](sb8.png) - - -#### Avoiding Repetition - -Repetition can be avoided by combining some very common, small numbers: - -![speaking binary](sb9.png) - -![speaking binary](sb10.png) - -These shortcuts essentially create a quaternary system to pronounce binary, but in this case, the result improves spoken efficiency by a lot. - -## Arithmetic Operations - -### Addition - -Adding two numbers can be done using a simple, manual algorithm: By adding the last bit of both numbers first, carry if necessary, then move on to the next number, and so on. - -| + | `.` | `\|` | -| ---- | ---- | ----- | -| `.` | `.` | `\|` | -| `\|` | `\|` | `\|.` | - -![addition](addition.png) - -> To add numbers more efficiently by hand, you can group bits together and memorize the patters, effectively doubling your speed. -> -> ![hand addition](hand_addition1.png) -> -> To improve calculation speed even further, you can group more bits, and learn those patterns as well. -> -> ![hand addition](hand_addition2.png) - -#### Half Adder - -Add 2, single-digit binary numbers. - -|**A**|**B**|**Carry**|**Sum**| -|---|---|---|---| -|`.`|`.`|`.`|`.`| -|`.`|`\|`|`.`|`\|`| -|`\|`|`.`|`.`|`\|`| -|`\|`|`\|`|`\|`|`.`| - -![[/image 14.png|image 14.png]] - -#### Full Adder - -When adding 2 binary numbers, one operation might return a carry value, which the `half adder` can't accept, as it only has 2 inputs. - -![[/image 15.png|image 15.png]] - -To solve this issue, a `full adder` accepts 3 inputs. - -![[/image 16.png|image 16.png]] - -#### 8-Bit Adder - -![[/image 17.png|image 17.png]] - -### Subtraction - -Subtraction can result in negative numbers. Like how additions need a carry, subtraction needs a borrow. - -#### Half Subtractor - -Subtract 2, single-digit binary numbers. - -|**A**|**B**|Diff|**Borrow**| -|---|---|---|---| -|`.`|`.`|`.`|`.`| -|`.`|`\|`|`\|`|`\|`| -|`\|`|`.`|`\|`|`.`| -|`\|`|`\|`|`.`|`.`| - -![[/image 18.png|image 18.png]] - -#### Full Subtractor - -A `full subtractor` accepts the borrow value, allowing us to chain results. - -|**A**|**B**|**B**in|**Diff**|**B**out| -|---|---|---|---|---| -|`.`|`.`|`.`|`.`|`.`| -|`.`|`.`|`\|`|`\|`|`\|`| -|`.`|`\|`|`.`|`\|`|`\|`| -|`.`|`\|`|`\|`|`.`|`\|`| -|`\|`|`.`|`.`|`\|`|`.`| -|`\|`|`.`|`\|`|`.`|`.`| -|`\|`|`\|`|`.`|`.`|`.`| -|`\|`|`\|`|`\|`|`\|`|`\|`| - -![[/image 19.png|image 19.png]] - -#### 8-Bit Subtractor - -![[/image 20.png|image 20.png]] - -### Multiplication - -Multiplication is also similar to its decimal counterpart, but because binary is so small compared to decimal, the steps are also much simpler. - -First, multiply the top number to every digit of the bottom one, and then add the results together. - -|X|`.`|`\|`| -|---|---|---| -|`.`|`.`|`.`| -|`\|`|`.`|`\|`| - -```Plain - ||.| - x ||. - .... - ||.| -+ ||.| - |..|||. -``` - -#### 2-Bit By 2-Bit Multiplier - -![[/image 21.png|image 21.png]] - -### Division - -1. Find the smallest part of the dividend greater than or equal to the divisor. - - ```Plain - |.| ||..| - ``` - -2. Write the first digit of ==the answer==, and ==copy the original divisor down==. - - ```Plain - | - |.| ||..| - |.| - ``` - -3. Subtract ==the aligned dividend digits== by ==the digits under the dividend====.== - - ```Plain - | - |.| ||..| - |.| - | - ``` - -4. Lower ==the next dividend digit==. - - ```Plain - | - |.| ||..| - |.| - |. - ``` - -5. Is ==the total== greater or equal to the ==divisor==? If so, add a `1` to the answer. If not, ==add a== ==`0`== ==to the answer== ==and return to step 4==. - - ```Plain - |. - |.| ||..| - |.| - |. - ``` - -6. Return to step 2, until you reach the end of the number. If you reached the end, you found ==the answer==. - - ```Plain - |.| - |.| ||..| - |.| - |.| - |.| - . - ``` - -### ASCII - -Binary can also be used to represent characters. - -| | | | | | | -|---|---|---|---|---|---| -|Dec|Hex|Binary|HTML|Char|Description| -|0|00|00000000|`�`|NUL|Null| -|1|01|00000001|``|SOH|Start of Heading| -|2|02|00000010|``|STX|Start of Text| -|3|03|00000011|``|ETX|End of Text| -|4|04|00000100|``|EOT|End of Transmission| -|5|05|00000101|``|ENQ|Enquiry| -|6|06|00000110|``|ACK|Acknowledge| -|7|07|00000111|``|BEL|Bell| -|8|08|00001000|``|BS|Backspace| -|9|09|00001001|` `|HT|Horizontal Tab| -|10|0A|00001010|` `|LF|Line Feed| -|11|0B|00001011|` `|VT|Vertical Tab| -|12|0C|00001100|` `|FF|Form Feed| -|13|0D|00001101|` `|CR|Carriage Return| -|14|0E|00001110|``|SO|Shift Out| -|15|0F|00001111|``|SI|Shift In| -|16|10|00010000|``|DLE|Data Link Escape| -|17|11|00010001|``|DC1|Device Control 1| -|18|12|00010010|``|DC2|Device Control 2| -|19|13|00010011|``|DC3|Device Control 3| -|20|14|00010100|``|DC4|Device Control 4| -|21|15|00010101|``|NAK|Negative Acknowledge| -|22|16|00010110|``|SYN|Synchronize| -|23|17|00010111|``|ETB|End of Transmission Block| -|24|18|00011000|``|CAN|Cancel| -|25|19|00011001|``|EM|End of Medium| -|26|1A|00011010|``|SUB|Substitute| -|27|1B|00011011|``|ESC|Escape| -|28|1C|00011100|``|FS|File Separator| -|29|1D|00011101|``|GS|Group Separator| -|30|1E|00011110|``|RS|Record Separator| -|31|1F|00011111|``|US|Unit Separator| -|32|20|00100000|` `|space|Space| -|33|21|00100001|`!`|!|exclamation mark| -|34|22|00100010|`"`|"|double quote| -|35|23|00100011|`#`|#|number| -|36|24|00100100|`$`|$|dollar| -|37|25|00100101|`%`|%|percent| -|38|26|00100110|`&`|&|ampersand| -|39|27|00100111|`'`|'|single quote| -|40|28|00101000|`(`|(|left parenthesis| -|41|29|00101001|`)`|)|right parenthesis| -|42|2A|00101010|`*`|*|asterisk| -|43|2B|00101011|`+`|+|plus| -|44|2C|00101100|`,`|,|comma| -|45|2D|00101101|`-`|-|minus| -|46|2E|00101110|`.`|.|period| -|47|2F|00101111|`/`|/|slash| -|48|30|00110000|`0`|0|zero| -|49|31|00110001|`1`|1|one| -|50|32|00110010|`2`|2|two| -|51|33|00110011|`3`|3|three| -|52|34|00110100|`4`|4|four| -|53|35|00110101|`5`|5|five| -|54|36|00110110|`6`|6|six| -|55|37|00110111|`7`|7|seven| -|56|38|00111000|`8`|8|eight| -|57|39|00111001|`9`|9|nine| -|58|3A|00111010|`:`|:|colon| -|59|3B|00111011|`;`|;|semicolon| -|60|3C|00111100|`<`|<|less than| -|61|3D|00111101|`=`|=|equality sign| -|62|3E|00111110|`>`|>|greater than| -|63|3F|00111111|`?`|?|question mark| -|64|40|01000000|`@`|@|at sign| -|65|41|01000001|`A`|A|| -|66|42|01000010|`B`|B|| -|67|43|01000011|`C`|C|| -|68|44|01000100|`D`|D|| -|69|45|01000101|`E`|E|| -|70|46|01000110|`F`|F|| -|71|47|01000111|`G`|G|| -|72|48|01001000|`H`|H|| -|73|49|01001001|`I`|I|| -|74|4A|01001010|`J`|J|| -|75|4B|01001011|`K`|K|| -|76|4C|01001100|`L`|L|| -|77|4D|01001101|`M`|M|| -|78|4E|01001110|`N`|N|| -|79|4F|01001111|`O`|O|| -|80|50|01010000|`P`|P|| -|81|51|01010001|`Q`|Q|| -|82|52|01010010|`R`|R|| -|83|53|01010011|`S`|S|| -|84|54|01010100|`T`|T|| -|85|55|01010101|`U`|U|| -|86|56|01010110|`V`|V|| -|87|57|01010111|`W`|W|| -|88|58|01011000|`X`|X|| -|89|59|01011001|`Y`|Y|| -|90|5A|01011010|`Z`|Z|| -|91|5B|01011011|`[`|[|left square bracket| -|92|5C|01011100|`\`|\|backslash| -|93|5D|01011101|`]`|]|right square bracket| -|94|5E|01011110|`^`|^|caret / circumflex| -|95|5F|01011111|`_`|_|underscore| -|96|60|01100000|```|`|grave / accent| -|97|61|01100001|`a`|a|| -|98|62|01100010|`b`|b|| -|99|63|01100011|`c`|c|| -|100|64|01100100|`d`|d|| -|101|65|01100101|`e`|e|| -|102|66|01100110|`f`|f|| -|103|67|01100111|`g`|g|| -|104|68|01101000|`h`|h|| -|105|69|01101001|`i`|i|| -|106|6A|01101010|`j`|j|| -|107|6B|01101011|`k`|k|| -|108|6C|01101100|`l`|l|| -|109|6D|01101101|`m`|m|| -|110|6E|01101110|`n`|n|| -|111|6F|01101111|`o`|o|| -|112|70|01110000|`p`|p|| -|113|71|01110001|`q`|q|| -|114|72|01110010|`r`|r|| -|115|73|01110011|`s`|s|| -|116|74|01110100|`t`|t|| -|117|75|01110101|`u`|u|| -|118|76|01110110|`v`|v|| -|119|77|01110111|`w`|w|| -|120|78|01111000|`x`|x|| -|121|79|01111001|`y`|y|| -|122|7A|01111010|`z`|z|| -|123|7B|01111011|`{`|{|left curly bracket| -|124|7C|01111100|`|`|\||vertical bar| -|125|7D|01111101|`}`|}|right curly bracket| -|126|7E|01111110|`~`|~|tilde| -|127|7F|01111111|``|DEL|delete| diff --git a/content/notes/Templates/base.md b/content/notes/drafts/_Templates/base.md similarity index 100% rename from content/notes/Templates/base.md rename to content/notes/drafts/_Templates/base.md diff --git a/content/notes/assembly.md b/content/notes/drafts/assembly.md similarity index 100% rename from content/notes/assembly.md rename to content/notes/drafts/assembly.md diff --git a/content/notes/linux/index.md b/content/notes/drafts/linux/index.md similarity index 100% rename from content/notes/linux/index.md rename to content/notes/drafts/linux/index.md diff --git a/content/notes/temp/EXT2.png b/content/notes/drafts/linux_architecture/EXT2.png similarity index 100% rename from content/notes/temp/EXT2.png rename to content/notes/drafts/linux_architecture/EXT2.png diff --git a/content/notes/temp/EXT3.png b/content/notes/drafts/linux_architecture/EXT3.png similarity index 100% rename from content/notes/temp/EXT3.png rename to content/notes/drafts/linux_architecture/EXT3.png diff --git a/content/notes/temp/image5.png b/content/notes/drafts/linux_architecture/image5.png similarity index 100% rename from content/notes/temp/image5.png rename to content/notes/drafts/linux_architecture/image5.png diff --git a/content/notes/temp/image6.png b/content/notes/drafts/linux_architecture/image6.png similarity index 100% rename from content/notes/temp/image6.png rename to content/notes/drafts/linux_architecture/image6.png diff --git a/content/notes/temp/image7.png b/content/notes/drafts/linux_architecture/image7.png similarity index 100% rename from content/notes/temp/image7.png rename to content/notes/drafts/linux_architecture/image7.png diff --git a/content/notes/Notion/Linux Architecture.md b/content/notes/drafts/linux_architecture/index.md similarity index 94% rename from content/notes/Notion/Linux Architecture.md rename to content/notes/drafts/linux_architecture/index.md index 98e9563..cbddac9 100644 --- a/content/notes/Notion/Linux Architecture.md +++ b/content/notes/drafts/linux_architecture/index.md @@ -1,15 +1,13 @@ --- -Status: In progress -Created by: Trude EH +title: Linux Architecture +description: +date: 2025-02-17T08:32:33+00:00 +draft: true tags: - computer-science - - notes - os author: TrudeEH -draft: false -searchHidden: false showToc: true -title: Linux Architecture --- ## Kernel @@ -43,7 +41,7 @@ A program is an executable containing machine code. When a computer executes a p ![[image5.png]] A program loaded in memory is a process. -> [!important] Note: For interpreted languages, the interpreter creates a process that executes the code directly. +> Note: For interpreted languages, the interpreter creates a process that executes the code directly. ### Modules @@ -74,7 +72,7 @@ The GPU still has a device file, which is used by the Kernel's DRM and Mesa, but ## File Systems -> [!important] This section is heavily simplified and only covers `EXT2-4`. +> This section is heavily simplified and only covers `EXT2-4`. ### Concepts @@ -102,7 +100,7 @@ Uses linked lists to store and lookup data, to keep the implementation of the fi #### HTrees -`EXT3` can also use a [[algorithms-and-data/index]] instead of a linked list to store directory entries, making lookup times much faster. To build the HTree, all filenames are hashed and ordered, making the implementation more complex. This feature is disabled by default. +`EXT3` can also use a [[ready/algorithms-and-data/index]] instead of a linked list to store directory entries, making lookup times much faster. To build the HTree, all filenames are hashed and ordered, making the implementation more complex. This feature is disabled by default. #### Scalability diff --git a/content/notes/lua.md b/content/notes/drafts/lua.md similarity index 100% rename from content/notes/lua.md rename to content/notes/drafts/lua.md diff --git a/content/notes/macOS.md b/content/notes/drafts/macOS.md similarity index 100% rename from content/notes/macOS.md rename to content/notes/drafts/macOS.md diff --git a/content/notes/algorithms-and-data/bigO.png b/content/notes/ready/algorithms-and-data/bigO.png similarity index 100% rename from content/notes/algorithms-and-data/bigO.png rename to content/notes/ready/algorithms-and-data/bigO.png diff --git a/content/notes/algorithms-and-data/index.md b/content/notes/ready/algorithms-and-data/index.md similarity index 99% rename from content/notes/algorithms-and-data/index.md rename to content/notes/ready/algorithms-and-data/index.md index cc5cec2..acb4753 100644 --- a/content/notes/algorithms-and-data/index.md +++ b/content/notes/ready/algorithms-and-data/index.md @@ -1,12 +1,13 @@ --- -tags: - - notes - - programming - - c -author: TrudeEH -draft: false -showToc: true title: Algorithms & Data Structures +description: +date: 2025-02-17T08:52:10+00:00 +draft: false +tags: + - c + - programming +author: TrudeEH +showToc: true --- ## Time Complexity @@ -253,8 +254,8 @@ int main(void) { ``` ```C -\#include -\#include +#include +#include typedef struct node { int number; struct node *next; diff --git a/content/notes/algorithms-and-data/trie.png b/content/notes/ready/algorithms-and-data/trie.png similarity index 100% rename from content/notes/algorithms-and-data/trie.png rename to content/notes/ready/algorithms-and-data/trie.png diff --git a/content/notes/binary-operations/addition.png b/content/notes/ready/binary-operations/addition.png similarity index 100% rename from content/notes/binary-operations/addition.png rename to content/notes/ready/binary-operations/addition.png diff --git a/content/notes/binary-operations/binarycalc.png b/content/notes/ready/binary-operations/binarycalc.png similarity index 100% rename from content/notes/binary-operations/binarycalc.png rename to content/notes/ready/binary-operations/binarycalc.png diff --git a/content/notes/binary-operations/hand_addition1.png b/content/notes/ready/binary-operations/hand_addition1.png similarity index 100% rename from content/notes/binary-operations/hand_addition1.png rename to content/notes/ready/binary-operations/hand_addition1.png diff --git a/content/notes/binary-operations/hand_addition2.png b/content/notes/ready/binary-operations/hand_addition2.png similarity index 100% rename from content/notes/binary-operations/hand_addition2.png rename to content/notes/ready/binary-operations/hand_addition2.png diff --git a/content/notes/temp/image68.png b/content/notes/ready/binary-operations/image68.png similarity index 100% rename from content/notes/temp/image68.png rename to content/notes/ready/binary-operations/image68.png diff --git a/content/notes/temp/image69.png b/content/notes/ready/binary-operations/image69.png similarity index 100% rename from content/notes/temp/image69.png rename to content/notes/ready/binary-operations/image69.png diff --git a/content/notes/temp/image70.png b/content/notes/ready/binary-operations/image70.png similarity index 100% rename from content/notes/temp/image70.png rename to content/notes/ready/binary-operations/image70.png diff --git a/content/notes/temp/image71.png b/content/notes/ready/binary-operations/image71.png similarity index 100% rename from content/notes/temp/image71.png rename to content/notes/ready/binary-operations/image71.png diff --git a/content/notes/temp/image72.png b/content/notes/ready/binary-operations/image72.png similarity index 100% rename from content/notes/temp/image72.png rename to content/notes/ready/binary-operations/image72.png diff --git a/content/notes/temp/image73.png b/content/notes/ready/binary-operations/image73.png similarity index 100% rename from content/notes/temp/image73.png rename to content/notes/ready/binary-operations/image73.png diff --git a/content/notes/temp/image74.png b/content/notes/ready/binary-operations/image74.png similarity index 100% rename from content/notes/temp/image74.png rename to content/notes/ready/binary-operations/image74.png diff --git a/content/notes/temp/image75.png b/content/notes/ready/binary-operations/image75.png similarity index 100% rename from content/notes/temp/image75.png rename to content/notes/ready/binary-operations/image75.png diff --git a/content/notes/ready/binary-operations/index.md b/content/notes/ready/binary-operations/index.md new file mode 100644 index 0000000..655d83d --- /dev/null +++ b/content/notes/ready/binary-operations/index.md @@ -0,0 +1,390 @@ +--- +title: Binary Operations +description: +date: 2025-02-17T08:37:24+00:00 +draft: false +tags: + - computer-science +author: TrudeEH +showToc: true +--- + +## Binary + +Binary is a base-2 numeral system: A simple way to represent numbers using only two states. + +|Binary|Decimal|Hexadecimal| +|---|---|---| +|0000|00|00| +|0001|01|01| +|0010|02|02| +|0011|03|03| +|0100|04|04| +|0101|05|05| +|0110|06|06| +|0111|07|07| +|1000|08|08| +|1001|09|09| +|1010|10|0A| +|1011|11|0B| +|1100|12|0C| +|1101|13|0D| +|1110|14|0E| +|1111|15|0F| + +![Binary Calculations](binarycalc.png) + +### Speaking Binary + +> The information in this section is non-standard, and mostly a curiosity. + +You may struggle to pronounce large binary numbers, as saying a long list of 0s and 1s is very inefficient. Instead, we can do something like this: + +![speaking binary](sb1.png) + +To be able to say any binary number, list the number, starting by the last digit: + +![speaking binary](sb2.png) + +And pronounce the ones that correspond to a `1` bit. + +![speaking binary](sb3.png) + +#### Pronounce a Binary Number at a Glance + +1. Break the number at its largest pair of bits. + + ![speaking binary](sb4.png) + +2. Represent the left and right sides. + + ![speaking binary](sb5.png) + + In this example, there is a `two` in the order of magnitude `hex`. + +3. Continue to represent the left and right sides recursively. + + ![speaking binary](sb6.png) + + The last number is `four`. + +#### Decode a Spoken Binary Number + +Starting with `two hex four`: + +1. Find the largest power of two. + + ![speaking binary](sb7.png) + +2. The number is equal to the left side, times the order of magnitude, plus the right side. + + ![speaking binary](sb8.png) + +#### Avoiding Repetition + +Repetition can be avoided by combining some very common, small numbers: + +![speaking binary](sb9.png) + +![speaking binary](sb10.png) + +These shortcuts essentially create a quaternary system to pronounce binary, but in this case, the result improves spoken efficiency by a lot. + +## Arithmetic Operations + +### Addition + +Adding two numbers can be done using a simple, manual algorithm: By adding the last bit of both numbers first, carry if necessary, then move on to the next number, and so on. + +| **+** | 0 | 1 | +| ------- | --- | ---- | +| 0 | 0 | 1 | +| 1 | 1 | 10 | + +![addition](addition.png) + +> To add numbers more efficiently by hand, you can group bits together and memorize the patters, effectively doubling your speed. +> +> ![hand addition](hand_addition1.png) +> +> To improve calculation speed even further, you can group more bits, and learn those patterns as well. +> +> ![hand addition](hand_addition2.png) + +#### Half Adder + +Add 2, single-digit binary numbers. + +| **A** | **B** | **Carry** | **Sum** | +| ----- | ----- | --------- | ------- | +| 0 | 0 | 0 | 0 | +| 0 | 1 | 0 | 1 | +| 1 | 0 | 0 | 1 | +| 1 | 1 | 1 | 0 | + +![[image68.png]] + +#### Full Adder + +When adding 2 binary numbers, one operation might return a carry value, which the `half adder` can't accept, as it only has 2 inputs. + +![[image69.png]] + +To solve this issue, a `full adder` accepts 3 inputs. + +![[image70.png]] + +#### 8-Bit Adder + +![[image71.png]] + +### Subtraction + +Subtraction can result in negative numbers. Like how additions need a carry, subtraction needs a borrow. + +#### Half Subtractor + +Subtract 2, single-digit binary numbers. + +| **A** | **B** | Diff | **Borrow** | +| ----- | ----- | ---- | ---------- | +| 0 | 0 | 0 | 0 | +| 0 | 1 | 1 | 1 | +| 1 | 0 | 1 | 0 | +| 1 | 1 | 0 | 0 | + +![[image72.png]] + +#### Full Subtractor + +A `full subtractor` accepts the borrow value, allowing us to chain results. + +| **A** | **B** | **B**in | **Diff** | **B**out | +| ----- | ----- | ------- | -------- | -------- | +| 0 | 0 | 0 | 0 | 0 | +| 0 | 0 | 1 | 1 | 1 | +| 0 | 1 | 0 | 1 | 1 | +| 0 | 1 | 1 | 0 | 1 | +| 1 | 0 | 0 | 1 | 0 | +| 1 | 0 | 1 | 0 | 0 | +| 1 | 1 | 0 | 0 | 0 | +| 1 | 1 | 1 | 1 | 1 | + +![[image73.png]] + +#### 8-Bit Subtractor + +![[image74.png]] + +### Multiplication + +Multiplication is also similar to its decimal counterpart, but because binary is so small compared to decimal, the steps are also much simpler. + +First, multiply the top number to every digit of the bottom one, and then add the results together. + +| X | 0 | 1 | +| --- | --- | --- | +| 0 | 0 | 0 | +| 1 | 0 | 1 | + +```Plain + ||.| + x ||. + .... + ||.| ++ ||.| + |..|||. +``` + +#### 2-Bit By 2-Bit Multiplier + +![[image75.png]] + +### Division + +1. Find the smallest part of the dividend greater than or equal to the ==divisor==. + + ```Plain + |.| ||..| + ``` + +2. Write the first digit of ==the answer==, and ==copy the original divisor down==. + + ```Plain + | + |.| ||..| + |.| + ``` + +3. Subtract ==the aligned dividend digits== by ==the digits under the dividend==. + + ```Plain + | + |.| ||..| + |.| + | + ``` + +4. Lower ==the next dividend digit==. + + ```Plain + | + |.| ||..| + |.| + |. + ``` + +5. Is ==the total== greater or equal to the ==divisor==? If so, add a `1` to the answer. If not, ==add a== ==`0`== ==to the answer== ==and return to step 4==. + + ```Plain + |. + |.| ||..| + |.| + |. + ``` + +6. Return to step 2, until you reach the end of the number. If you reached the end, you found ==the answer==. + + ```Plain + |.| + |.| ||..| + |.| + |.| + |.| + . + ``` + +### ASCII + +Binary can also be used to represent characters. + +| Dec | Hex | Binary | HTML | Char | Description | +| --- | --- | -------- | -------- | ----------- | ------------------------- | +| 0 | 00 | 00000000 | `�` | NUL | Null | +| 1 | 01 | 00000001 | `` | SOH | Start of Heading | +| 2 | 02 | 00000010 | `` | STX | Start of Text | +| 3 | 03 | 00000011 | `` | ETX | End of Text | +| 4 | 04 | 00000100 | `` | EOT | End of Transmission | +| 5 | 05 | 00000101 | `` | ENQ | Enquiry | +| 6 | 06 | 00000110 | `` | ACK | Acknowledge | +| 7 | 07 | 00000111 | `` | BEL | Bell | +| 8 | 08 | 00001000 | `` | BS | Backspace | +| 9 | 09 | 00001001 | ` ` | HT | Horizontal Tab | +| 10 | 0A | 00001010 | ` ` | LF | Line Feed | +| 11 | 0B | 00001011 | ` ` | VT | Vertical Tab | +| 12 | 0C | 00001100 | ` ` | FF | Form Feed | +| 13 | 0D | 00001101 | ` ` | CR | Carriage Return | +| 14 | 0E | 00001110 | `` | SO | Shift Out | +| 15 | 0F | 00001111 | `` | SI | Shift In | +| 16 | 10 | 00010000 | `` | DLE | Data Link Escape | +| 17 | 11 | 00010001 | `` | DC1 | Device Control 1 | +| 18 | 12 | 00010010 | `` | DC2 | Device Control 2 | +| 19 | 13 | 00010011 | `` | DC3 | Device Control 3 | +| 20 | 14 | 00010100 | `` | DC4 | Device Control 4 | +| 21 | 15 | 00010101 | `` | NAK | Negative Acknowledge | +| 22 | 16 | 00010110 | `` | SYN | Synchronize | +| 23 | 17 | 00010111 | `` | ETB | End of Transmission Block | +| 24 | 18 | 00011000 | `` | CAN | Cancel | +| 25 | 19 | 00011001 | `` | EM | End of Medium | +| 26 | 1A | 00011010 | `` | SUB | Substitute | +| 27 | 1B | 00011011 | `` | ESC | Escape | +| 28 | 1C | 00011100 | `` | FS | File Separator | +| 29 | 1D | 00011101 | `` | GS | Group Separator | +| 30 | 1E | 00011110 | `` | RS | Record Separator | +| 31 | 1F | 00011111 | `` | US | Unit Separator | +| 32 | 20 | 00100000 | ` ` | space | Space | +| 33 | 21 | 00100001 | `!` | ! | exclamation mark | +| 34 | 22 | 00100010 | `"` | " | double quote | +| 35 | 23 | 00100011 | `#` | # | number | +| 36 | 24 | 00100100 | `$` | $ | dollar | +| 37 | 25 | 00100101 | `%` | % | percent | +| 38 | 26 | 00100110 | `&` | & | ampersand | +| 39 | 27 | 00100111 | `'` | ' | single quote | +| 40 | 28 | 00101000 | `(` | ( | left parenthesis | +| 41 | 29 | 00101001 | `)` | ) | right parenthesis | +| 42 | 2A | 00101010 | `*` | * | asterisk | +| 43 | 2B | 00101011 | `+` | + | plus | +| 44 | 2C | 00101100 | `,` | , | comma | +| 45 | 2D | 00101101 | `-` | - | minus | +| 46 | 2E | 00101110 | `.` | . | period | +| 47 | 2F | 00101111 | `/` | / | slash | +| 48 | 30 | 00110000 | `0` | 0 | zero | +| 49 | 31 | 00110001 | `1` | 1 | one | +| 50 | 32 | 00110010 | `2` | 2 | two | +| 51 | 33 | 00110011 | `3` | 3 | three | +| 52 | 34 | 00110100 | `4` | 4 | four | +| 53 | 35 | 00110101 | `5` | 5 | five | +| 54 | 36 | 00110110 | `6` | 6 | six | +| 55 | 37 | 00110111 | `7` | 7 | seven | +| 56 | 38 | 00111000 | `8` | 8 | eight | +| 57 | 39 | 00111001 | `9` | 9 | nine | +| 58 | 3A | 00111010 | `:` | : | colon | +| 59 | 3B | 00111011 | `;` | ; | semicolon | +| 60 | 3C | 00111100 | `<` | < | less than | +| 61 | 3D | 00111101 | `=` | = | equality sign | +| 62 | 3E | 00111110 | `>` | > | greater than | +| 63 | 3F | 00111111 | `?` | ? | question mark | +| 64 | 40 | 01000000 | `@` | @ | at sign | +| 65 | 41 | 01000001 | `A` | A | | +| 66 | 42 | 01000010 | `B` | B | | +| 67 | 43 | 01000011 | `C` | C | | +| 68 | 44 | 01000100 | `D` | D | | +| 69 | 45 | 01000101 | `E` | E | | +| 70 | 46 | 01000110 | `F` | F | | +| 71 | 47 | 01000111 | `G` | G | | +| 72 | 48 | 01001000 | `H` | H | | +| 73 | 49 | 01001001 | `I` | I | | +| 74 | 4A | 01001010 | `J` | J | | +| 75 | 4B | 01001011 | `K` | K | | +| 76 | 4C | 01001100 | `L` | L | | +| 77 | 4D | 01001101 | `M` | M | | +| 78 | 4E | 01001110 | `N` | N | | +| 79 | 4F | 01001111 | `O` | O | | +| 80 | 50 | 01010000 | `P` | P | | +| 81 | 51 | 01010001 | `Q` | Q | | +| 82 | 52 | 01010010 | `R` | R | | +| 83 | 53 | 01010011 | `S` | S | | +| 84 | 54 | 01010100 | `T` | T | | +| 85 | 55 | 01010101 | `U` | U | | +| 86 | 56 | 01010110 | `V` | V | | +| 87 | 57 | 01010111 | `W` | W | | +| 88 | 58 | 01011000 | `X` | X | | +| 89 | 59 | 01011001 | `Y` | Y | | +| 90 | 5A | 01011010 | `Z` | Z | | +| 91 | 5B | 01011011 | `[` | [ | left square bracket | +| 92 | 5C | 01011100 | `\` | \|backslash | | +| 93 | 5D | 01011101 | `]` | ] | right square bracket | +| 94 | 5E | 01011110 | `^` | ^ | caret / circumflex | +| 95 | 5F | 01011111 | `_` | _ | underscore | +| 96 | 60 | 01100000 | ``` | ` | grave / accent | +| 97 | 61 | 01100001 | `a` | a | | +| 98 | 62 | 01100010 | `b` | b | | +| 99 | 63 | 01100011 | `c` | c | | +| 100 | 64 | 01100100 | `d` | d | | +| 101 | 65 | 01100101 | `e` | e | | +| 102 | 66 | 01100110 | `f` | f | | +| 103 | 67 | 01100111 | `g` | g | | +| 104 | 68 | 01101000 | `h` | h | | +| 105 | 69 | 01101001 | `i` | i | | +| 106 | 6A | 01101010 | `j` | j | | +| 107 | 6B | 01101011 | `k` | k | | +| 108 | 6C | 01101100 | `l` | l | | +| 109 | 6D | 01101101 | `m` | m | | +| 110 | 6E | 01101110 | `n` | n | | +| 111 | 6F | 01101111 | `o` | o | | +| 112 | 70 | 01110000 | `p` | p | | +| 113 | 71 | 01110001 | `q` | q | | +| 114 | 72 | 01110010 | `r` | r | | +| 115 | 73 | 01110011 | `s` | s | | +| 116 | 74 | 01110100 | `t` | t | | +| 117 | 75 | 01110101 | `u` | u | | +| 118 | 76 | 01110110 | `v` | v | | +| 119 | 77 | 01110111 | `w` | w | | +| 120 | 78 | 01111000 | `x` | x | | +| 121 | 79 | 01111001 | `y` | y | | +| 122 | 7A | 01111010 | `z` | z | | +| 123 | 7B | 01111011 | `{` | { | left curly bracket | +| 124 | 7C | 01111100 | `|` | \| | vertical bar | +| 125 | 7D | 01111101 | `}` | } | right curly bracket | +| 126 | 7E | 01111110 | `~` | ~ | tilde | +| 127 | 7F | 01111111 | `` | DEL | delete | diff --git a/content/notes/binary-operations/sb1.png b/content/notes/ready/binary-operations/sb1.png similarity index 100% rename from content/notes/binary-operations/sb1.png rename to content/notes/ready/binary-operations/sb1.png diff --git a/content/notes/binary-operations/sb10.png b/content/notes/ready/binary-operations/sb10.png similarity index 100% rename from content/notes/binary-operations/sb10.png rename to content/notes/ready/binary-operations/sb10.png diff --git a/content/notes/binary-operations/sb2.png b/content/notes/ready/binary-operations/sb2.png similarity index 100% rename from content/notes/binary-operations/sb2.png rename to content/notes/ready/binary-operations/sb2.png diff --git a/content/notes/binary-operations/sb3.png b/content/notes/ready/binary-operations/sb3.png similarity index 100% rename from content/notes/binary-operations/sb3.png rename to content/notes/ready/binary-operations/sb3.png diff --git a/content/notes/binary-operations/sb4.png b/content/notes/ready/binary-operations/sb4.png similarity index 100% rename from content/notes/binary-operations/sb4.png rename to content/notes/ready/binary-operations/sb4.png diff --git a/content/notes/binary-operations/sb5.png b/content/notes/ready/binary-operations/sb5.png similarity index 100% rename from content/notes/binary-operations/sb5.png rename to content/notes/ready/binary-operations/sb5.png diff --git a/content/notes/binary-operations/sb6.png b/content/notes/ready/binary-operations/sb6.png similarity index 100% rename from content/notes/binary-operations/sb6.png rename to content/notes/ready/binary-operations/sb6.png diff --git a/content/notes/binary-operations/sb7.png b/content/notes/ready/binary-operations/sb7.png similarity index 100% rename from content/notes/binary-operations/sb7.png rename to content/notes/ready/binary-operations/sb7.png diff --git a/content/notes/binary-operations/sb8.png b/content/notes/ready/binary-operations/sb8.png similarity index 100% rename from content/notes/binary-operations/sb8.png rename to content/notes/ready/binary-operations/sb8.png diff --git a/content/notes/binary-operations/sb9.png b/content/notes/ready/binary-operations/sb9.png similarity index 100% rename from content/notes/binary-operations/sb9.png rename to content/notes/ready/binary-operations/sb9.png diff --git a/content/notes/c-language.md b/content/notes/ready/c-language.md similarity index 99% rename from content/notes/c-language.md rename to content/notes/ready/c-language.md index 39b0430..afa94a2 100644 --- a/content/notes/c-language.md +++ b/content/notes/ready/c-language.md @@ -1,13 +1,13 @@ --- -tags: - - notes - - programming - - c -author: TrudeEH -showToc: true title: C Language description: +date: 2025-02-17T08:54:40+00:00 draft: false +tags: + - c + - programming +author: TrudeEH +showToc: true --- ## Tools @@ -47,7 +47,7 @@ The binary length of each data type depends on the CPU, OS, and compiler, but in | 4 | 4.294.967.295 | | 8 | 18.446.744.073.709.551.615 | | 16 | 340.282.366.920.938.463.463.374.607.431.768.211.455 | -| 32 | 1.157 × 10^76 | +| 32 | 1.157 × 10^76 | Examples diff --git a/content/notes/c-snippets.md b/content/notes/ready/c-snippets.md similarity index 85% rename from content/notes/c-snippets.md rename to content/notes/ready/c-snippets.md index 2f3cf1e..24a01b5 100644 --- a/content/notes/c-snippets.md +++ b/content/notes/ready/c-snippets.md @@ -1,17 +1,18 @@ --- -tags: - - notes - - programming - - c -author: TrudeEH -draft: false -showToc: true title: C Snippets +description: +date: 2025-02-17T08:56:33+00:00 +draft: false +tags: + - c + - programming +author: TrudeEH +showToc: true --- ## Cast Strings to Numbers -The `atoi()` function in `stdlib` has a similar implementation to the one below. +The `atoi()` function in `stdlib` is implemented similarly to the one below. ASCII encodes numbers in order, after special characters. diff --git a/content/notes/compiling.md b/content/notes/ready/compiling.md similarity index 96% rename from content/notes/compiling.md rename to content/notes/ready/compiling.md index 8a47bf9..263e5b9 100644 --- a/content/notes/compiling.md +++ b/content/notes/ready/compiling.md @@ -1,12 +1,16 @@ --- +title: Compiling [MAKE / GCC] +description: +date: 2025-02-17T08:59:53+00:00 +draft: false tags: - - notes + - c - programming author: TrudeEH -draft: false showToc: true -title: Compiling [MAKE / GCC] --- + + Convert `C` code into machine code in 4 steps: 1. **Preprocessing** (Convert all preprocessor instructions: `#…`) 2. **Compiling** (Convert `C` code to machine code) diff --git a/content/notes/temp/image10.png b/content/notes/ready/cpu_architecture/image10.png similarity index 100% rename from content/notes/temp/image10.png rename to content/notes/ready/cpu_architecture/image10.png diff --git a/content/notes/temp/image11.png b/content/notes/ready/cpu_architecture/image11.png similarity index 100% rename from content/notes/temp/image11.png rename to content/notes/ready/cpu_architecture/image11.png diff --git a/content/notes/temp/image12.png b/content/notes/ready/cpu_architecture/image12.png similarity index 100% rename from content/notes/temp/image12.png rename to content/notes/ready/cpu_architecture/image12.png diff --git a/content/notes/temp/image13.png b/content/notes/ready/cpu_architecture/image13.png similarity index 100% rename from content/notes/temp/image13.png rename to content/notes/ready/cpu_architecture/image13.png diff --git a/content/notes/temp/image14.png b/content/notes/ready/cpu_architecture/image14.png similarity index 100% rename from content/notes/temp/image14.png rename to content/notes/ready/cpu_architecture/image14.png diff --git a/content/notes/temp/image15.png b/content/notes/ready/cpu_architecture/image15.png similarity index 100% rename from content/notes/temp/image15.png rename to content/notes/ready/cpu_architecture/image15.png diff --git a/content/notes/temp/image16.png b/content/notes/ready/cpu_architecture/image16.png similarity index 100% rename from content/notes/temp/image16.png rename to content/notes/ready/cpu_architecture/image16.png diff --git a/content/notes/temp/image17.png b/content/notes/ready/cpu_architecture/image17.png similarity index 100% rename from content/notes/temp/image17.png rename to content/notes/ready/cpu_architecture/image17.png diff --git a/content/notes/temp/image18.png b/content/notes/ready/cpu_architecture/image18.png similarity index 100% rename from content/notes/temp/image18.png rename to content/notes/ready/cpu_architecture/image18.png diff --git a/content/notes/temp/image19.png b/content/notes/ready/cpu_architecture/image19.png similarity index 100% rename from content/notes/temp/image19.png rename to content/notes/ready/cpu_architecture/image19.png diff --git a/content/notes/temp/image20.png b/content/notes/ready/cpu_architecture/image20.png similarity index 100% rename from content/notes/temp/image20.png rename to content/notes/ready/cpu_architecture/image20.png diff --git a/content/notes/temp/image21.png b/content/notes/ready/cpu_architecture/image21.png similarity index 100% rename from content/notes/temp/image21.png rename to content/notes/ready/cpu_architecture/image21.png diff --git a/content/notes/temp/image22.png b/content/notes/ready/cpu_architecture/image22.png similarity index 100% rename from content/notes/temp/image22.png rename to content/notes/ready/cpu_architecture/image22.png diff --git a/content/notes/temp/image23.png b/content/notes/ready/cpu_architecture/image23.png similarity index 100% rename from content/notes/temp/image23.png rename to content/notes/ready/cpu_architecture/image23.png diff --git a/content/notes/temp/image24.png b/content/notes/ready/cpu_architecture/image24.png similarity index 100% rename from content/notes/temp/image24.png rename to content/notes/ready/cpu_architecture/image24.png diff --git a/content/notes/temp/image25.png b/content/notes/ready/cpu_architecture/image25.png similarity index 100% rename from content/notes/temp/image25.png rename to content/notes/ready/cpu_architecture/image25.png diff --git a/content/notes/temp/image26.png b/content/notes/ready/cpu_architecture/image26.png similarity index 100% rename from content/notes/temp/image26.png rename to content/notes/ready/cpu_architecture/image26.png diff --git a/content/notes/temp/image27.png b/content/notes/ready/cpu_architecture/image27.png similarity index 100% rename from content/notes/temp/image27.png rename to content/notes/ready/cpu_architecture/image27.png diff --git a/content/notes/temp/image28.png b/content/notes/ready/cpu_architecture/image28.png similarity index 100% rename from content/notes/temp/image28.png rename to content/notes/ready/cpu_architecture/image28.png diff --git a/content/notes/temp/image29.png b/content/notes/ready/cpu_architecture/image29.png similarity index 100% rename from content/notes/temp/image29.png rename to content/notes/ready/cpu_architecture/image29.png diff --git a/content/notes/temp/image30.png b/content/notes/ready/cpu_architecture/image30.png similarity index 100% rename from content/notes/temp/image30.png rename to content/notes/ready/cpu_architecture/image30.png diff --git a/content/notes/temp/image31.png b/content/notes/ready/cpu_architecture/image31.png similarity index 100% rename from content/notes/temp/image31.png rename to content/notes/ready/cpu_architecture/image31.png diff --git a/content/notes/temp/image32.png b/content/notes/ready/cpu_architecture/image32.png similarity index 100% rename from content/notes/temp/image32.png rename to content/notes/ready/cpu_architecture/image32.png diff --git a/content/notes/temp/image33.png b/content/notes/ready/cpu_architecture/image33.png similarity index 100% rename from content/notes/temp/image33.png rename to content/notes/ready/cpu_architecture/image33.png diff --git a/content/notes/temp/image34.png b/content/notes/ready/cpu_architecture/image34.png similarity index 100% rename from content/notes/temp/image34.png rename to content/notes/ready/cpu_architecture/image34.png diff --git a/content/notes/temp/image35.png b/content/notes/ready/cpu_architecture/image35.png similarity index 100% rename from content/notes/temp/image35.png rename to content/notes/ready/cpu_architecture/image35.png diff --git a/content/notes/temp/image36.png b/content/notes/ready/cpu_architecture/image36.png similarity index 100% rename from content/notes/temp/image36.png rename to content/notes/ready/cpu_architecture/image36.png diff --git a/content/notes/temp/image37.png b/content/notes/ready/cpu_architecture/image37.png similarity index 100% rename from content/notes/temp/image37.png rename to content/notes/ready/cpu_architecture/image37.png diff --git a/content/notes/temp/image38.png b/content/notes/ready/cpu_architecture/image38.png similarity index 100% rename from content/notes/temp/image38.png rename to content/notes/ready/cpu_architecture/image38.png diff --git a/content/notes/temp/image39.png b/content/notes/ready/cpu_architecture/image39.png similarity index 100% rename from content/notes/temp/image39.png rename to content/notes/ready/cpu_architecture/image39.png diff --git a/content/notes/temp/image8.png b/content/notes/ready/cpu_architecture/image8.png similarity index 100% rename from content/notes/temp/image8.png rename to content/notes/ready/cpu_architecture/image8.png diff --git a/content/notes/temp/image9.png b/content/notes/ready/cpu_architecture/image9.png similarity index 100% rename from content/notes/temp/image9.png rename to content/notes/ready/cpu_architecture/image9.png diff --git a/content/notes/Notion/CPU Architecture.md b/content/notes/ready/cpu_architecture/index.md similarity index 73% rename from content/notes/Notion/CPU Architecture.md rename to content/notes/ready/cpu_architecture/index.md index 33f4d47..6db9bb9 100644 --- a/content/notes/Notion/CPU Architecture.md +++ b/content/notes/ready/cpu_architecture/index.md @@ -1,14 +1,12 @@ --- -Status: Ready -Created by: Trude EH +title: CPU Architecture +description: +date: 2025-02-17T08:06:50+00:00 +draft: false tags: - computer-science - - notes author: TrudeEH -draft: false -searchHidden: false showToc: true -title: CPU Architecture --- ## Components @@ -35,7 +33,7 @@ For example, a simple computer architecture could use `00` to represent arithmet ![[image11.png]] To decide which type of operation to execute (subtraction, multiplication, addition, etc), the 3rd and 4th bits could be used. ![[image12.png]] -Using a [[binary-operations/index]], we can build an inefficient, but simple circuit to do this. +Using a [[ready/binary-operations/index]], we can build an inefficient, but simple circuit to do this. ![[image13.png]] This type of circuit is an Arithmetic Logic Unit (ALU). @@ -87,7 +85,7 @@ We can finally add the ALU (Arithmetic Logic Unit) we built before into the new The gray trapezoids are multiplexers: ![[image23.png]] The output value is then stored in a temporary register, before replacing the first operand register's value. -The component we just built to control the `ALU` is part of a `Control Unit`. The full `control unit` is very complex, as it needs to handle every possible instruction. (So far, we have seen how to implement the `ALU` and `RAM`.) +The component we just built to control the `ALU` is part of a `Control Unit`. The full `control unit` is very complex, as it needs to handle every possible instruction. (So far, we have seen how to implement the `ALU` and `RAM`.) ![[image24.png]] Each register in the `CU` has a specific purpose, unlike `RAM`, which can be used to store any values. ![[image25.png]] @@ -121,30 +119,29 @@ Sometimes, we might want to loop only if a certain condition is met. For context, imagine subtracting a number from itself. In this case, the ALU will provide some extra information, using 1 bit registers called `flags`. ![[image33.png]] -| | | | -|---|---|---| -|0|**O**verflow|When a number is too large to fit in the output register.| -|1|**Z**ero|When the result is zero.| -|0|**N**egative|When a number is negative.| +| N | Flag | Description | +| --- | ------------ | --------------------------------------------------------- | +| 0 | **O**verflow | When a number is too large to fit in the output register. | +| 1 | **Z**ero | When the result is zero. | +| 0 | **N**egative | When a number is negative. | This additional information can be used to make decisions, and make **conditional jumps** possible. -| | | | -|---|---|---| -|`JMP_OFW XXXX`|Jump Overflow|Overwrites the `Address Register` with the value `XXXX` if the `O_FLAG` is **ON**. If the flag is **OFF**, the `Address Register`'s value is incremented by **1**.| -|`JMP_ZRO XXXX`|Jump Zero|Overwrites the `Address Register` with the value `XXXX` if the `Z_FLAG` is **ON**. If the flag is **OFF**, the `Address Register`'s value is incremented by **1**.| -|`JMP_NEG XXXX`|Jump Negative|Overwrites the `Address Register` with the value `XXXX` if the `N_FLAG` is **ON**. If the flag is **OFF**, the `Address Register`'s value is incremented by **1**.| -|`JMP_ABV XXXX`|Jump Above|Overwrites the `Address Register` with the value `XXXX` if **neither** the `Z_FLAG` nor `N_FLAG` are **ON**. If either is **ON,** the `Address Register`'s value is incremented by **1**.| +| ASM | Command | Description | +| -------------- | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `JMP_OFW XXXX` | Jump Overflow | Overwrites the `Address Register` with the value `XXXX` if the `O_FLAG` is **ON**. If the flag is **OFF**, the `Address Register`'s value is incremented by **1**. | +| `JMP_ZRO XXXX` | Jump Zero | Overwrites the `Address Register` with the value `XXXX` if the `Z_FLAG` is **ON**. If the flag is **OFF**, the `Address Register`'s value is incremented by **1**. | +| `JMP_NEG XXXX` | Jump Negative | Overwrites the `Address Register` with the value `XXXX` if the `N_FLAG` is **ON**. If the flag is **OFF**, the `Address Register`'s value is incremented by **1**. | +| `JMP_ABV XXXX` | Jump Above | Overwrites the `Address Register` with the value `XXXX` if **neither** the `Z_FLAG` nor `N_FLAG` are **ON**. If either is **ON,** the `Address Register`'s value is incremented by **1**. | Comparing two numbers is the same as subtracting them. $$a - 5 = b$$ -| | | | -|---|---|---| -|**b** is negative|**b** is zero|**b** is positive| -|then|then|then| -|a < 5|a == 5|a > 5| +| **b** is negative | **b** is zero | **b** is positive | +| ----------------- | ------------- | ----------------- | +| then | then | then | +| a < 5 | a == 5 | a > 5 | For example: ![[image34.png]] diff --git a/content/notes/temp/image94.png b/content/notes/ready/databases/image94.png similarity index 100% rename from content/notes/temp/image94.png rename to content/notes/ready/databases/image94.png diff --git a/content/notes/temp/image95.png b/content/notes/ready/databases/image95.png similarity index 100% rename from content/notes/temp/image95.png rename to content/notes/ready/databases/image95.png diff --git a/content/notes/Notion/Databases SQL.md b/content/notes/ready/databases/index.md similarity index 97% rename from content/notes/Notion/Databases SQL.md rename to content/notes/ready/databases/index.md index 57a5662..8d74617 100644 --- a/content/notes/Notion/Databases SQL.md +++ b/content/notes/ready/databases/index.md @@ -1,15 +1,13 @@ --- -Status: Ready -Created by: Trude EH +title: Databases [SQL] +description: +date: 2025-02-17T08:27:35+00:00 +draft: false tags: - - notes - programming - web author: TrudeEH -draft: false -searchHidden: false showToc: true -title: Databases [SQL] --- ## Flat-File Databases @@ -77,7 +75,7 @@ UPDATE table SET column = value WHERE condition; -- Update values DELETE FROM table WHERE condition; -- Delete data ``` -> [!important] In `SQL`, there is **NO WAY** to undo actions. Especially when writing or deleting from the database, do not type `;` unless you know exactly what you are doing! +> In `SQL`, there is **NO WAY** to undo actions. Especially when writing or deleting from the database, do not type `;` unless you know exactly what you are doing! #### Wildcard diff --git a/content/notes/Notion/Diodes.md b/content/notes/ready/diodes.md similarity index 98% rename from content/notes/Notion/Diodes.md rename to content/notes/ready/diodes.md index 67bd117..54fd976 100644 --- a/content/notes/Notion/Diodes.md +++ b/content/notes/ready/diodes.md @@ -1,15 +1,16 @@ --- -Status: Ready -Created by: Trude EH +title: Diodes +description: +date: 2025-02-17T08:18:09+00:00 +draft: false tags: - electronics - - notes author: TrudeEH -draft: false -searchHidden: false showToc: true -title: Diodes --- + + + A diode allows current to only flow in one direction in a circuit. ## Schematic diff --git a/content/notes/encryption.md b/content/notes/ready/encryption.md similarity index 97% rename from content/notes/encryption.md rename to content/notes/ready/encryption.md index fffc5a5..dceb40a 100644 --- a/content/notes/encryption.md +++ b/content/notes/ready/encryption.md @@ -1,12 +1,13 @@ --- +title: Encryption [GPG] +description: +date: 2025-02-17T09:02:06+00:00 +draft: false tags: - networking - - notes - tools author: TrudeEH -draft: false showToc: true -title: Encryption [GPG] --- ## Symmetric Encryption diff --git a/content/notes/flask.md b/content/notes/ready/flask.md similarity index 99% rename from content/notes/flask.md rename to content/notes/ready/flask.md index 7645be1..7949b12 100644 --- a/content/notes/flask.md +++ b/content/notes/ready/flask.md @@ -1,13 +1,17 @@ --- +title: Flask +description: +date: 2025-02-17T09:01:01+00:00 +draft: false tags: - - notes - programming - web author: TrudeEH -draft: false showToc: true -title: Flask --- + + + Flask is a web framework for Python. It facilitates the creation of web apps (dynamic web pages). ## Run Flask diff --git a/content/notes/Notion/Debugging GDB.md b/content/notes/ready/gdb.md similarity index 96% rename from content/notes/Notion/Debugging GDB.md rename to content/notes/ready/gdb.md index 9c1fbd7..aef1a75 100644 --- a/content/notes/Notion/Debugging GDB.md +++ b/content/notes/ready/gdb.md @@ -1,14 +1,12 @@ --- -Status: Ready -Created by: Trude EH +title: Debugging [GDB] +description: +date: 2025-02-17T08:16:48+00:00 +draft: false tags: - - notes - programming author: TrudeEH -draft: false -searchHidden: false showToc: true -title: Debugging [GDB] --- ## GDB Debugging diff --git a/content/notes/git.md b/content/notes/ready/git.md similarity index 99% rename from content/notes/git.md rename to content/notes/ready/git.md index d1d55e5..c1b881c 100644 --- a/content/notes/git.md +++ b/content/notes/ready/git.md @@ -1,14 +1,16 @@ --- +title: Version Control [GIT] +description: +date: 2025-02-17T08:58:11+00:00 +draft: false tags: - - notes - programming - tools author: TrudeEH -draft: false showToc: true -title: Version Control [GIT] --- + Git is a version control system first developed by Linus Torvalds. It facilitates collaboration on large projects, keeps track of changes, and allows mistakes to be rolled back into a previous state. ## Configure Git diff --git a/content/notes/html.md b/content/notes/ready/html.md similarity index 89% rename from content/notes/html.md rename to content/notes/ready/html.md index 7afaa29..3dc5833 100644 --- a/content/notes/html.md +++ b/content/notes/ready/html.md @@ -1,17 +1,20 @@ --- +title: HTML +description: +date: 2025-02-17T09:11:23+00:00 +draft: false tags: - - notes - web author: TrudeEH -draft: false showToc: true -title: HTML --- + + *HTML* is a markup language: The foundation of every website, as it structures content and provides information such as text, images and other media to the browser. ## Hello World -*HTML* is not a programming language, only formatting to write a document as. The following 'code' is valid *HTML.* +HTML is not a programming language, only formatting to write a document as. The following 'code' is valid HTML. ```HTML Hello, world. @@ -34,9 +37,9 @@ A more complete solution, however, would be to define a structure for the docume ``` -*HTML* uses tags to define a hierarchy. The `` tag defines metadata for the site, such as the page's title, encoding types, and any external resources. The `` tag is the content itself: any paragraphs (`

`), images, forms and scripts, to name a few. +HTML uses tags to define a hierarchy. The `` tag defines metadata for the site, such as the page's title, encoding types, and any external resources. The `` tag is the content itself: any paragraphs (`

`), images, forms and scripts, to name a few. -> When reading *HTML*, the browser applies a set of default styles to make it more readable. *HTML* is **not** the place to style content, however. For example, a common mistake is to use headings based on their size or font weight, instead of their meaning. Everything can all be styled using *CSS* later, so try to ignore the design when writing *HTML*, and focus on the content instead. +> When reading HTML, the browser applies a set of default styles to make it more readable. HTML is **not** the place to style content, however. For example, a common mistake is to use headings based on their size or font weight, instead of their meaning. Everything can all be styled using CSS later, so try to ignore the design when writing HTML, and focus on the content instead. > Not all tags hold content, but for those that do, the end of that content is defined with a closing tag: ``. ## Basic Tags diff --git a/content/notes/http.md b/content/notes/ready/http.md similarity index 98% rename from content/notes/http.md rename to content/notes/ready/http.md index ff5d1a1..619b6f7 100644 --- a/content/notes/http.md +++ b/content/notes/ready/http.md @@ -1,13 +1,14 @@ --- +title: HTTP [CURL] +description: +date: 2025-02-17T09:22:33+00:00 +draft: false tags: - networking - - notes - tools - web author: TrudeEH -draft: false showToc: true -title: HTTP [curl] --- ## HTTP diff --git a/content/notes/https-ssl-certs.md b/content/notes/ready/https-ssl-certs.md similarity index 98% rename from content/notes/https-ssl-certs.md rename to content/notes/ready/https-ssl-certs.md index 8ce5d59..eb05561 100644 --- a/content/notes/https-ssl-certs.md +++ b/content/notes/ready/https-ssl-certs.md @@ -1,12 +1,13 @@ --- +title: HTTPS and SSL Certificates +description: +date: 2025-02-17T09:17:30+00:00 +draft: false tags: - networking - - notes - web author: TrudeEH -draft: false showToc: true -title: HTTPS and SSL Certificates --- ## HTTP(s) diff --git a/content/notes/irc.md b/content/notes/ready/irc.md similarity index 91% rename from content/notes/irc.md rename to content/notes/ready/irc.md index 7cde5ca..f2933d2 100644 --- a/content/notes/irc.md +++ b/content/notes/ready/irc.md @@ -1,11 +1,12 @@ --- +title: IRC +description: +date: 2025-02-17T09:13:13+00:00 +draft: false tags: - networking - - notes author: TrudeEH -draft: false showToc: true -title: IRC --- ## The IRC Protocol @@ -16,14 +17,14 @@ IRC is a very simple communication protocol that allows users to chat in real ti ### Server -To be able to communicate, users must connect to a server. Each server has its own rules, bots and commands. The IRC protocol itself does not implement encryption, however, [[https-ssl-certs]] can be used to establish a secure connection **with the server**. +To be able to communicate, users must connect to a server. Each server has its own rules, bots and commands. The IRC protocol itself does not implement encryption, however, [[https-ssl-certs|SSL Certificates]] can be used to establish a secure connection **with the server**. Every message sent **can be read by the server**, including **private messages** between users. Separate IRC instances can communicate. This concept is often called **server federation**. This allows for users in different servers to send messages to each other. ### Client -To connect to a server, every user needs a client. Because IRC is an open protocol, there are many clients one can use, however, I am currently using [halloy](https://halloy.squidowl.org/index.html). -For example, *halloy* can be configured as follows: +To connect to a server, every user needs a client. Because IRC is an open protocol, there are many clients one can use, however, for this example I am using [halloy](https://halloy.squidowl.org/index.html). +Halloy can be configured as follows: ```TOML # Example without encryption @@ -162,7 +163,7 @@ services: ``` To properly configure your server, be sure to read the [container’s documentation](https://hub.docker.com/r/inspircd/inspircd-docker/). -This container generates a self-signed SSL certificate for secure connections, however, it won't be accepted by actual clients. Refer to my [[https-ssl-certs]] to generate a real certificate for TLS to work. After generating your certificate, simply replace the old one with it. +This container generates a self-signed SSL certificate for secure connections, however, it won't be accepted by actual clients. Refer to my [[https-ssl-certs|SSL guide]] to generate a real certificate for TLS to work. After generating your certificate, simply replace the old one with it. ### Linux @@ -188,7 +189,7 @@ Finally, start `inspircd`. sudo systemctl start inspircd ``` -To enable TLS, refer to my [[https-ssl-certs]]. After generating your certificate, copy it to `inspircd`'s ssl directory. +To enable TLS, refer to my [[https-ssl-certs|SSL guide]]. After generating your certificate, copy it to `inspircd`'s ssl directory. ```Shell sudo cp /etc/letsencrypt/live/irc.example.com/fullchain.pem /etc/inspircd/ssl/cert.pem diff --git a/content/notes/temp/image42.png b/content/notes/ready/logic_gates/image42.png similarity index 100% rename from content/notes/temp/image42.png rename to content/notes/ready/logic_gates/image42.png diff --git a/content/notes/temp/image43.png b/content/notes/ready/logic_gates/image43.png similarity index 100% rename from content/notes/temp/image43.png rename to content/notes/ready/logic_gates/image43.png diff --git a/content/notes/temp/image44.png b/content/notes/ready/logic_gates/image44.png similarity index 100% rename from content/notes/temp/image44.png rename to content/notes/ready/logic_gates/image44.png diff --git a/content/notes/temp/image45.png b/content/notes/ready/logic_gates/image45.png similarity index 100% rename from content/notes/temp/image45.png rename to content/notes/ready/logic_gates/image45.png diff --git a/content/notes/temp/image46.png b/content/notes/ready/logic_gates/image46.png similarity index 100% rename from content/notes/temp/image46.png rename to content/notes/ready/logic_gates/image46.png diff --git a/content/notes/temp/image47.png b/content/notes/ready/logic_gates/image47.png similarity index 100% rename from content/notes/temp/image47.png rename to content/notes/ready/logic_gates/image47.png diff --git a/content/notes/temp/image48.png b/content/notes/ready/logic_gates/image48.png similarity index 100% rename from content/notes/temp/image48.png rename to content/notes/ready/logic_gates/image48.png diff --git a/content/notes/temp/image49.png b/content/notes/ready/logic_gates/image49.png similarity index 100% rename from content/notes/temp/image49.png rename to content/notes/ready/logic_gates/image49.png diff --git a/content/notes/temp/image50.png b/content/notes/ready/logic_gates/image50.png similarity index 100% rename from content/notes/temp/image50.png rename to content/notes/ready/logic_gates/image50.png diff --git a/content/notes/temp/image51.png b/content/notes/ready/logic_gates/image51.png similarity index 100% rename from content/notes/temp/image51.png rename to content/notes/ready/logic_gates/image51.png diff --git a/content/notes/temp/image52.png b/content/notes/ready/logic_gates/image52.png similarity index 100% rename from content/notes/temp/image52.png rename to content/notes/ready/logic_gates/image52.png diff --git a/content/notes/temp/image53.png b/content/notes/ready/logic_gates/image53.png similarity index 100% rename from content/notes/temp/image53.png rename to content/notes/ready/logic_gates/image53.png diff --git a/content/notes/Notion/Logic Gates.md b/content/notes/ready/logic_gates/index.md similarity index 95% rename from content/notes/Notion/Logic Gates.md rename to content/notes/ready/logic_gates/index.md index 8c0eea4..ac50667 100644 --- a/content/notes/Notion/Logic Gates.md +++ b/content/notes/ready/logic_gates/index.md @@ -1,15 +1,13 @@ --- -Status: Ready -Created by: Trude EH -tags: - - computer-science - - electronics - - notes -author: TrudeEH -draft: false -searchHidden: false -showToc: true title: Logic Gates +description: +date: 2025-02-17T08:25:49+00:00 +draft: false +tags: + - electronics + - computer-science +author: TrudeEH +showToc: true --- ## NOT diff --git a/content/notes/temp/image76.png b/content/notes/ready/memory/image76.png similarity index 100% rename from content/notes/temp/image76.png rename to content/notes/ready/memory/image76.png diff --git a/content/notes/temp/image77.png b/content/notes/ready/memory/image77.png similarity index 100% rename from content/notes/temp/image77.png rename to content/notes/ready/memory/image77.png diff --git a/content/notes/temp/image78.png b/content/notes/ready/memory/image78.png similarity index 100% rename from content/notes/temp/image78.png rename to content/notes/ready/memory/image78.png diff --git a/content/notes/temp/image79.png b/content/notes/ready/memory/image79.png similarity index 100% rename from content/notes/temp/image79.png rename to content/notes/ready/memory/image79.png diff --git a/content/notes/temp/image80.png b/content/notes/ready/memory/image80.png similarity index 100% rename from content/notes/temp/image80.png rename to content/notes/ready/memory/image80.png diff --git a/content/notes/temp/image81.png b/content/notes/ready/memory/image81.png similarity index 100% rename from content/notes/temp/image81.png rename to content/notes/ready/memory/image81.png diff --git a/content/notes/temp/image82.png b/content/notes/ready/memory/image82.png similarity index 100% rename from content/notes/temp/image82.png rename to content/notes/ready/memory/image82.png diff --git a/content/notes/temp/image83.png b/content/notes/ready/memory/image83.png similarity index 100% rename from content/notes/temp/image83.png rename to content/notes/ready/memory/image83.png diff --git a/content/notes/temp/image84.png b/content/notes/ready/memory/image84.png similarity index 100% rename from content/notes/temp/image84.png rename to content/notes/ready/memory/image84.png diff --git a/content/notes/temp/image85.png b/content/notes/ready/memory/image85.png similarity index 100% rename from content/notes/temp/image85.png rename to content/notes/ready/memory/image85.png diff --git a/content/notes/temp/image86.png b/content/notes/ready/memory/image86.png similarity index 100% rename from content/notes/temp/image86.png rename to content/notes/ready/memory/image86.png diff --git a/content/notes/temp/image87.png b/content/notes/ready/memory/image87.png similarity index 100% rename from content/notes/temp/image87.png rename to content/notes/ready/memory/image87.png diff --git a/content/notes/temp/image88.png b/content/notes/ready/memory/image88.png similarity index 100% rename from content/notes/temp/image88.png rename to content/notes/ready/memory/image88.png diff --git a/content/notes/temp/image89.png b/content/notes/ready/memory/image89.png similarity index 100% rename from content/notes/temp/image89.png rename to content/notes/ready/memory/image89.png diff --git a/content/notes/temp/image90.png b/content/notes/ready/memory/image90.png similarity index 100% rename from content/notes/temp/image90.png rename to content/notes/ready/memory/image90.png diff --git a/content/notes/temp/image91.png b/content/notes/ready/memory/image91.png similarity index 100% rename from content/notes/temp/image91.png rename to content/notes/ready/memory/image91.png diff --git a/content/notes/temp/image92.png b/content/notes/ready/memory/image92.png similarity index 100% rename from content/notes/temp/image92.png rename to content/notes/ready/memory/image92.png diff --git a/content/notes/Notion/Memory.md b/content/notes/ready/memory/index.md similarity index 96% rename from content/notes/Notion/Memory.md rename to content/notes/ready/memory/index.md index 3410558..5587d8d 100644 --- a/content/notes/Notion/Memory.md +++ b/content/notes/ready/memory/index.md @@ -1,14 +1,12 @@ --- -Status: Ready -Created by: Trude EH +title: Memory +description: +date: 2025-02-17T08:22:26+00:00 +draft: false tags: - computer-science - - notes author: TrudeEH -draft: false -searchHidden: false showToc: true -title: Memory --- ## Remembering Data @@ -23,11 +21,15 @@ The inverse can be done with an `AND` gate. ![[image79.png]] To remember either a `1` or a `0`, we can do the following: ![[image80.png]] -AND-OR LATCH + +### AND-OR LATCH + The input `A` sets the output to `1`, and the input `B` sets the output to `0`. This circuit is able to store a bit of information, while powered on, even after both inputs are set to `0`. A slightly more advanced and intuitive version can be built as follows: ![[image81.png]] -GATED LATCH + +### GATED LATCH + The input `A` is the value to store, and when `B` is set to `1`, the value is stored. This is not the only way to store data using logic gates, but it is one of the simplest. diff --git a/content/notes/pass.md b/content/notes/ready/pass.md similarity index 91% rename from content/notes/pass.md rename to content/notes/ready/pass.md index 5d7b464..748a77c 100644 --- a/content/notes/pass.md +++ b/content/notes/ready/pass.md @@ -1,12 +1,12 @@ --- +title: Password Manager [PASS] +description: +date: 2025-02-17T09:19:30+00:00 +draft: false tags: - - networking - - notes - tools author: TrudeEH -draft: false showToc: true -title: Password Manager [PASS] --- ## Password Managers @@ -17,10 +17,10 @@ There are many options available, however, *pass* is one of the simplest ones. ## Pass -*Pass* uses *[[encryption]]* to encrypt your passwords. If you don't have one already, use *GPG* to generate a personal key. +*Pass* uses [[encryption]] to encrypt your passwords. If you don't have one already, use GPG to generate a personal key. Besides from allowing you to read your passwords, *pass* can be scripted, providing your passwords to scripts and other programs securely. Instead of a database, *pass* stores every password in separate files, inside a directory called `password-store`. You can use *pass* to organize passwords just like regular files in the filesystem. -Pass also integrates with [[git]], allowing you to undo changes, rollback to a previous state, and set a remote repository to save them on. +Pass also integrates with [[git|Git]], allowing you to undo changes, rollback to a previous state, and set a remote repository to save them on. ### Initialize Pass diff --git a/content/notes/python.md b/content/notes/ready/python.md similarity index 99% rename from content/notes/python.md rename to content/notes/ready/python.md index 57e57e4..9727f3e 100644 --- a/content/notes/python.md +++ b/content/notes/ready/python.md @@ -1,11 +1,13 @@ --- +title: Python +description: +date: 2025-02-17T09:23:25+00:00 +draft: false tags: - - notes + - python - programming author: TrudeEH -draft: false showToc: true -title: Python --- ## Python3 [Documentation](https://docs.python.org/3/) diff --git a/content/notes/ssh.md b/content/notes/ready/ssh.md similarity index 83% rename from content/notes/ssh.md rename to content/notes/ready/ssh.md index dbefcc5..48b7608 100644 --- a/content/notes/ssh.md +++ b/content/notes/ready/ssh.md @@ -1,14 +1,17 @@ --- +title: SSH +description: +date: 2025-02-17T09:21:16+00:00 +draft: false tags: - networking - - notes author: TrudeEH -draft: false showToc: true -title: SSH --- -*SSH* is a protocol for accessing a terminal remotely. -For *SSH* to work, the remote machine needs to have an *OpenSSH* instance running and listening for connections, and port 22 must be allowed through any VPNs or firewalls between the client and host machines. An *SSH* client is also needed, be it any UNIX system (using the `ssh` command), or a Windows server using a client such as *PuTTY*. + + +SSH is a protocol for accessing a terminal remotely. +For SSH to work, the remote machine needs to have an OpenSSH instance running and listening for connections, and port 22 must be allowed through any VPNs or firewalls between the client and host machines. An SSH client is also needed, be it any UNIX system (using the `ssh` command), or a Windows server using a client such as PuTTY. ## OpenSSH Client @@ -35,7 +38,7 @@ First, it is necessary to generate a private and public key to use with SSH. Alw ssh-keygen # Create a private/public key pair. ``` -> Make sure to back up your keys! Running the above command and saving the new keys would overwrite the previous ones, possibly locking you out of your servers. +> Make sure to back up your keys! Running the above command and saving the new keys would overwrite the previous ones, possibly locking you out of your servers. > After generating your keys, send the public key to your network administrator. #### Managing Multiple Keys @@ -95,7 +98,7 @@ journalctl -fu ssh / sshd # Preferred way to read logs ### Configure SSH Keys -By default, the *OpenSSH* server is configured to support both passwords and keys. +By default, the OpenSSH server is configured to support both passwords and keys. #### Add a Client's Public Key diff --git a/content/notes/tmux/index.md b/content/notes/ready/tmux/index.md similarity index 98% rename from content/notes/tmux/index.md rename to content/notes/ready/tmux/index.md index f93dfb9..c548de4 100644 --- a/content/notes/tmux/index.md +++ b/content/notes/ready/tmux/index.md @@ -1,11 +1,12 @@ --- +title: Terminal Multiplexer [TMUX] +description: +date: 2025-02-17T08:34:57+00:00 +draft: false tags: - - notes - tools author: TrudeEH -draft: false showToc: true -title: Terminal Multiplexer [TMUX] --- ## Overview @@ -22,7 +23,7 @@ title: Terminal Multiplexer [TMUX] - **Windows** (A session contains windows. These behave like tabs in other programs.) - **Panes** (A split in the window, each with its own terminal instance.) -![tmux](tmux_design.png) +![[tmux_design.png]] ## [Commands](https://tmuxcheatsheet.com/) diff --git a/content/notes/tmux/tmux_design.png b/content/notes/ready/tmux/tmux_design.png similarity index 100% rename from content/notes/tmux/tmux_design.png rename to content/notes/ready/tmux/tmux_design.png diff --git a/content/notes/transistors/image.png b/content/notes/ready/transistors/image.png similarity index 100% rename from content/notes/transistors/image.png rename to content/notes/ready/transistors/image.png diff --git a/content/notes/transistors/image1.png b/content/notes/ready/transistors/image1.png similarity index 100% rename from content/notes/transistors/image1.png rename to content/notes/ready/transistors/image1.png diff --git a/content/notes/transistors/image2.png b/content/notes/ready/transistors/image2.png similarity index 100% rename from content/notes/transistors/image2.png rename to content/notes/ready/transistors/image2.png diff --git a/content/notes/transistors/image3.png b/content/notes/ready/transistors/image3.png similarity index 100% rename from content/notes/transistors/image3.png rename to content/notes/ready/transistors/image3.png diff --git a/content/notes/transistors/image4.png b/content/notes/ready/transistors/image4.png similarity index 100% rename from content/notes/transistors/image4.png rename to content/notes/ready/transistors/image4.png diff --git a/content/notes/transistors/index.md b/content/notes/ready/transistors/index.md similarity index 81% rename from content/notes/transistors/index.md rename to content/notes/ready/transistors/index.md index e88898c..2e8cca8 100644 --- a/content/notes/transistors/index.md +++ b/content/notes/ready/transistors/index.md @@ -1,13 +1,16 @@ --- +title: Transistors +description: +date: 2025-02-17T08:14:53+00:00 +draft: false tags: - electronics - - notes author: TrudeEH -draft: false showToc: true -title: Transistors --- + + Transistors are electronic components that behave like a `switch`, or `amplifier`. ## Schematic @@ -23,25 +26,25 @@ Base --(--|<) ### Switch If the `base` pin is provided with energy, the transistor allows current to flow in the main circuit. -![](image.png) +![[image.png]] ### Amplifier Altering the voltage given to the `base` pin allows us to control a larger voltage in the main circuit. -![](image1.png) +![[image1.png]] ## Types of Transistor ### NPN An NPN transistor combines the `base` pin and `collector` pin. -![](image2.png) +![[image2.png]] -> Note: Even if the collector pin is disconnected from the circuit, a small amount of current still passes through. -> ![](image3.png) +> Note: Even if the collector pin is disconnected from the circuit, a small amount of current still passes through. ![[image3.png]] ### PNP A PNP transistor receives energy through the `emitter` pin, and then divides it to the remaining pins. -![](image4.png) + +![[image4.png]] diff --git a/content/notes/wsl2.md b/content/notes/ready/wsl2.md similarity index 98% rename from content/notes/wsl2.md rename to content/notes/ready/wsl2.md index 355203d..d3717f0 100644 --- a/content/notes/wsl2.md +++ b/content/notes/ready/wsl2.md @@ -1,12 +1,15 @@ --- -tags: - - notes - - os -author: TrudeEH -draft: false -showToc: true title: WSL2 +description: +date: 2025-02-17T09:18:31+00:00 +draft: false +tags: + - tools +author: TrudeEH +showToc: true --- + + Windows' `WSL` allows for installing a Linux subsystem on a Windows host. `WSL2` enhances `WSL` with support for launching GUI apps as if they were regular Windows programs (or any [X.org](http://X.org) window). ## Install WSL2 diff --git a/content/notes/temp/freebsd.png b/content/notes/temp/freebsd.png deleted file mode 100644 index 8be63d8..0000000 Binary files a/content/notes/temp/freebsd.png and /dev/null differ diff --git a/content/notes/temp/image93.png b/content/notes/temp/image93.png deleted file mode 100644 index 2ba373b..0000000 Binary files a/content/notes/temp/image93.png and /dev/null differ diff --git a/content/notes/temp/js.png b/content/notes/temp/js.png deleted file mode 100644 index 653b30a..0000000 Binary files a/content/notes/temp/js.png and /dev/null differ diff --git a/content/notes/temp/nix.svg b/content/notes/temp/nix.svg deleted file mode 100644 index 2a065bc..0000000 --- a/content/notes/temp/nix.svg +++ /dev/null @@ -1,187 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - diff --git a/content/notes/temp/pngwing.com.png b/content/notes/temp/pngwing.com.png deleted file mode 100644 index 4fec375..0000000 Binary files a/content/notes/temp/pngwing.com.png and /dev/null differ diff --git a/content/notes/temp/py.webp b/content/notes/temp/py.webp deleted file mode 100644 index a09f486..0000000 Binary files a/content/notes/temp/py.webp and /dev/null differ diff --git a/content/notes/temp/windows-11-icon-logo-png_seeklogo-406208.png b/content/notes/temp/windows-11-icon-logo-png_seeklogo-406208.png deleted file mode 100644 index e2034a0..0000000 Binary files a/content/notes/temp/windows-11-icon-logo-png_seeklogo-406208.png and /dev/null differ