Skip to content

Instantly share code, notes, and snippets.

View Juha3141's full-sized avatar
๐Ÿ’ญ
Trying to think something

Ian Juha Cho Juha3141

๐Ÿ’ญ
Trying to think something
  • University of Illinois Urbana-Champaign Computer Science
  • Arbitrary location in South Korea
  • 12:27 (UTC +09:00)
View GitHub Profile

๋ฐ”๋ผ๋ณด๋Š” ๊ด€์ ์— ๋”ฐ๋ผ x86-64์˜ ๋ ˆ์ง€์Šคํ„ฐ ๊ฐœ์ˆ˜์— ๋Œ€ํ•ด ๋งํ•˜๋Š” ๋ฐ”๊ฐ€ ๋งค๋ฒˆ ๋‹ฌ๋ผ์ ธ, Intel์˜ ๊ณต์‹ ๋ฌธ์„œ์ธ Intelยฎ 64 and IA-32 Architectures Software Developerโ€™s Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D, and 4์— ์„ค๋ช…๋˜์–ด ์žˆ๋Š” 64๋น„ํŠธ ๋ชจ๋“œ(64-bit mode)์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ๋ฒˆ์—ญํ•˜์—ฌ ์ •๋ฆฌํ•˜์—ฌ ๋ด„. 5329p์˜ ์ „์ฒด ๋ฌธ์„œ์—์„œ "register" ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋กœ ๋œจ๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๋ ˆ์ง€์Šคํ„ฐ์— ๊ด€ํ•ด ์ •๋ฆฌํ•˜์˜€์Œ.

๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ General Purpose Registers (Vol.1 p.3-13)

์ด๋ฆ„ ์šฉ๋„
RAX ์‚ฐ์ˆ  ์—ฐ์‚ฐ ์‹œ, ํ”ผ์—ฐ์‚ฐ์ž์™€ ๊ฒฐ๊ณผ์˜ ๋ˆ„์‚ฐ๊ธฐ๋กœ ์‚ฌ์šฉ
RBX ์ ‘๊ทผํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ์œ„์น˜ํ•œ ์„ธ๊ทธ๋จผํŠธ ์ƒ์˜ ์ฃผ์†Œ๋ฅผ ๊ฐ€๋ฅดํ‚ด (Offset; 8086 Real Mode์—์„œ์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๋ฐฉ์‹๊ณผ ์—ฐ๊ด€ Segment(๊ธฐ๋ณธ์ ์œผ๋กœ DS, Override ๊ฐ€๋Šฅ) + Offset(BX))
RCX ๋ฐ˜๋ณต ํšŸ์ˆ˜๋ฅผ ์ €์žฅํ•จ (REP ๋ช…๋ น ์‹œ CX๊ฐ€ 0์ด ๋  ๋–„ ๊นŒ์ง€ ๋ฐ˜๋ณต)
RDX I/O ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ์ €์žฅํ•จ
RDI ์„ธ๊ทธ๋จผํŠธ ์ƒ์˜ ๋ฐ์ดํ„ฐ ์ฃผ์†Œ๋ฅผ ๊ฐ€๋ฅดํ‚ค๋ฉฐ ํŠนํžˆ String ๋ช…๋ น์—์„œ์˜ ๋ชฉ์ ์ง€ ์ฃผ์†Œ์™€ ๊ด€๊ณ„๋จ (Offset; 8086 Real Mode์—์„œ์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๋ฐฉ์‹๊ณผ ์—ฐ๊ด€ Segment(ES, Override ๋ถˆ๊ฐ€๋Šฅ) + Offset(DI)))
@nemorize
nemorize / korean-subway-station-list.json5
Last active August 12, 2025 07:23
๋Œ€ํ•œ๋ฏผ๊ตญ ๊ตญ๋‚ด์— ์กด์žฌํ•˜๋Š” ์ง€ํ•˜์ฒ ์—ญ ์ •๋ณด(์—ญ๋ช…, ์ง€์—ญ๊ตฌ, ๋…ธ์„ , ์œ„/๊ฒฝ๋„) ๋ชฉ๋ก
[
// =======================================================
// ๋ณธ ์ž๋ฃŒ๋Š” CC0-1.0 ๋ผ์ด์„ ์Šค๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.
// https://creativecommons.org/publicdomain/zero/1.0/deed
// ์ €์ž‘๊ถŒ์ž์˜ ํ—ˆ๋ฝ์„ ๊ตฌํ•˜์ง€ ์•Š์•„๋„ ์ƒ์—…์ ์ธ ๋ชฉ์ ์„ ํฌํ•จํ•œ ์–ด๋– ํ•œ ๋ชฉ์ ์œผ๋กœ๋“ 
// ์ž์œ ๋กญ๊ฒŒ ๋ณต์‚ฌ, ์ˆ˜์ •, ๋ฐฐํฌ, ์‹ค์—ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
// =======================================================
// ๋ชจ๋“  ์ •๋ณด๋Š” ์ง์ ‘ ์ˆ˜์ง‘ํ•˜์—ฌ ์ •๋ฆฌํ•œ ์ •๋ณด์ž…๋‹ˆ๋‹ค.
// ์ผ๋ถ€ ์ •๋ณด๊ฐ€ ์˜ค๊ธฐ๋˜์—ˆ๊ฑฐ๋‚˜, ์œ„/๊ฒฝ๋„ ์ขŒํ‘œ๊ฐ€ ๋ถ€์ •ํ™•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
// Gist ๋Œ“๊ธ€์„ ํ†ตํ•ด ์˜ค๋ฅ˜๋ฅผ ์ œ๋ณดํ•ด์ฃผ์„ธ์š”.
@chaeya
chaeya / gist:bafc4e3c260ee6d8e2b8fb2f452e71a2
Created June 17, 2024 07:00
๋ฆฌ๋ˆ…์Šค์šฉ ํ•œ์ปด ์˜คํ”ผ์Šค
Ubuntu (>=20.04)
# hoffice_11.20.0.1520_amd64.deb
https://mega.nz/file/71UFmBCI#-aVOcQcZOCp4GIxp6kL7HGjA7NdpDW8PFWkjT5ax3aY
@snowyegret23
snowyegret23 / parse_bmfont_fnt.py
Last active February 17, 2024 13:27
bmfont์˜ fntํŒŒ์ผ์„ ์ฝ์–ด์„œ ํฐํŠธ ์ •๋ณด/๊ธ€๋ฆฌํ”„ ์ •๋ณด๋ฅผ dict๋กœ ๋ฆฌํ„ด (txt๋กœ exportํ–ˆ์„๋•Œ ์‚ฌ์šฉ)
import json
# ์ •์ˆ˜์ธ์ง€ ํŒ๋ณ„
def isint(number):
try:
ret = int(number)
return True
except ValueError:
return False
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
options = webdriver.ChromeOptions()
driver = webdriver.Chrome(options=options)
student_id = "REPLACE_WITH_STUDENT_ID"
name = "REPLACE_WITH_NAME"
window_count = 1
@dinhchi27
dinhchi27 / Key Sublime Text 3.2.1 Build 3207 - Sublime Text 3 License Key
Last active June 12, 2026 05:57
Key Sublime Text 3.2.1 Build 3207 - Sublime Text 3 License Key
Key Sublime Text 3.2.1 Build 3207
----- BEGIN LICENSE -----
Member J2TeaM
Single User License
EA7E-1011316
D7DA350E 1B8B0760 972F8B60 F3E64036
B9B4E234 F356F38F 0AD1E3B7 0E9C5FAD
FA0A2ABE 25F65BD8 D51458E5 3923CE80
87428428 79079A01 AA69F319 A1AF29A4
A684C2DC 0B1583D4 19CBD290 217618CD
@xnuk
xnuk / hyeong.md
Last active June 22, 2026 16:34
๋‚œํ•ดํ•œ ํ˜€์—‰.... ์–ธ์–ด

๋‚œํ•ดํ•œ ํ˜€์—‰... ์–ธ์–ด v0.4.5

  • โ€ฆ(U+2026), โ‹ฏ(U+22EF), โ‹ฎ(U+22EE)๋Š” ๋ชจ๋‘ .(U+002E)๊ฐ€ 3๋ฒˆ ์—ฐ์†์œผ๋กœ ๋‚˜์—ด๋œ ๊ฒƒ๊ณผ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ๋ด…๋‹ˆ๋‹ค.
  • "ํ•œ๊ธ€ ์Œ์ ˆ ๋ฌธ์ž"๋Š” ๊ฐ€(U+AC00) ์ด์ƒ ํžฃ(U+D7A3) ์ดํ•˜์˜ ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž๋“ค์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์Šคํƒ

  • ์Šคํƒ์˜ ๋ชจ๋“  ์›์†Œ๋Š” ์œ ๋ฆฌ์ˆ˜ ๋˜๋Š” NaN์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถ„๋ชจ๊ฐ€ 1์ธ ์œ ๋ฆฌ์ˆ˜๋ฅผ ํŽธ์˜์ƒ ์ •์ˆ˜๋ผ๊ณ  ์นญํ•ฉ๋‹ˆ๋‹ค.
  • NaN์€ ํŠน์ˆ˜ํ•œ ์ˆซ์ž์ฒ˜๋Ÿผ ์ทจ๊ธ‰๋ฉ๋‹ˆ๋‹ค. ์–ด๋– ํ•œ ์—ฐ์‚ฐ์„ ํ•˜๋”๋ผ๋„ ๊ทธ ์—ฐ์‚ฐ์— NaN์ด ์žˆ์„ ๊ฒฝ์šฐ ๊ทธ ์—ฐ์‚ฐ์˜ ๊ฐ’์€ NaN์ด ๋ฉ๋‹ˆ๋‹ค.
@jboner
jboner / latency.txt
Last active June 27, 2026 04:31
Latency Numbers Every Programmer Should Know
Latency Comparison Numbers (~2012)
----------------------------------
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 3,000 ns 3 us
Send 1K bytes over 1 Gbps network 10,000 ns 10 us
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD