이 페이지의 게시글 목록

날짜제목
날짜제목

파이썬으로 위드마크 공식 구현해 보기

이 포스트에서는 파이썬으로 위드마크 공식을 구현하는 코드를 간략하게 작성합니다. 가수 김호중의 음주운전 사건이 언론에 오르며 떠들썩한 가운데 ‘위드마크 공식’이라는 용어가 나와 화제가 되기도 했습니다. 위드마크 공식이란 1931년 스웨덴의 생리학자 에릭 마테오 프로셰 위드마크(Erik Matteo Prochet Widmark)가 고안한 공식으로, 음주운전 후 너무 오랜 시간이 지나 정확한 혈중 알코올 농도를 알 수 없을 경우 음주운전 시점의 혈중 … “파이썬으로 위드마크 공식 구현해 보기” 더 읽기

라즈베리 파이에서 ZRAM(압축메모리) 사용

라즈베리 파이 3B+ 이하(라즈베리 파이 4B 1GB 모델 포함) 기종에서는 RAM 용량이 1GB 이하로 제한되어 있습니다. 그마저도 내장 그래픽 특성상 VRAM으로 일부 할당됩니다. 이 작은 RAM 용량 때문에 사용하기 불편할 경우가 있는데, 이 경우 ZRAM을 이용하여 스왑 메모리를 늘려 좀 더 여유있게 쓸 수 있습니다. 라즈베리 파이에 라즈베리 파이 OS(구 라즈비안)나 그 밖에 리눅스 계열 … “라즈베리 파이에서 ZRAM(압축메모리) 사용” 더 읽기

MySQL 예제 – 시간 계산, 그룹 다루기

MySQL 예제를 만들어 보았습니다. 이 예제에서는 시간 계산 및 그룹을 다룹니다. 문제 테이블 `girlgroup`의 데이터가 다음과 같이 있다고 가정해 봅시다. groupNm memberNm birthday BLACKPINK 지수 1995-01-03 BLACKPINK 제니 1996-01-16 BLACKPINK 로제 1997-02-11 BLACKPINK 리사 1997-03-27 LE SSERAFIM 사쿠라 1998-03-19 aespa 카리나 2000-04-11 ITZY 예지 2000-05-26 ITZY 리아 2000-07-21 LE SSERAFIM 김채원 2000-08-01 aespa 지젤 2000-10-30 … “MySQL 예제 – 시간 계산, 그룹 다루기” 더 읽기

MSX 에뮬레이션 페이지 개설 안내

본 블로그 산하에 MSX 에뮬레이션 페이지를 개설하였습니다. URL은 https://pjw48.net/msx/ 입니다. 각종 MSX 게임(추억의 고전 MSX 게임, 홈브루 MSX 게임 등)을 제공할 목적으로 개설하였습니다. 차츰차츰 게임 수를 늘려나갈 예정입니다. 에뮬레이터를 제공해 주신 Paulo A. Peccin(https://github.com/ppeccin/webmsx)님께 감사드립니다. Thanks to Paulo A. Peccin!

유니코드 한글 완성자 코드표

※이 포스트는 11,172자의 한글 완성자를 모두 수록하여 스크롤 압박이 있습니다. 유니코드에서 한글 완성자는 U+AC00 – U+D7A3 범위 내에 11,172자가 배당되어 있습니다. 한글 자체는 유니코드 초창기부터 추가되었지만, 지금과 같은 순서는 유니코드 2.0 버전부터 확립되었습니다. 초기 버전인 1.0.0에서는 KS X 1001 완성형의 2,350자가 U+3400 – U+3D2D 범위에 추가되었고, 그 다음 1.1 버전에서는 U+3D2E – U+44B7 범위에 1,930자와 … “유니코드 한글 완성자 코드표” 더 읽기

파이썬으로 콰인 만들기

이 포스트에서는 파이썬으로 콰인을 만드는 방법을 서술합니다. 콰인(Quine)은 미국의 철학자 윌러드 밴 오먼 콰인(Willard Van Orman Quine)에서 유래한 것으로, 자기 자신의 소스 코드를 출력하는 프로그램을 말합니다. 소스 코드와 출력 결과가 토씨 하나 틀리지 않고 완전히 같아야 하기 때문에 만들기가 까다로운 것으로 알려져 있는데, 파이썬에서는 문자열 포매팅 기호를 이용해 좀 더 간단하게 만들 수 있습니다. 우선 … “파이썬으로 콰인 만들기” 더 읽기

저급 언어와 고급 언어

컴퓨터 프로그래밍 언어 하면 저급 언어와 고급 언어로 분류됩니다. 고급 언어는 다시 컴파일러 언어와 인터프리터 언어, 절차 지향 언어와 객체 지향 언어 등의 분류가 있습니다. 여기서는 저급 언어와 고급 언어의 차이를 설명합니다. 저급 언어(Low-Level Language)는 기계어와 어셈블리어 이렇게 2개의 프로그래밍 언어가 있고, 나머지(C, Java, Python 등)는 모두 고급 언어(High-Level Language)로 분류됩니다. 여기서 저급 언어라 함은 … “저급 언어와 고급 언어” 더 읽기

MSX 어셈블리어로 Hello, world! 바이너리 만들기 예제

MSX 컴퓨터에서 “Hello, world!”라는 바이너리 프로그램을 MSX BASIC에서 실행하는 용도를 가정하고 어셈블리어로 코딩해 봅시다. CHPUT: equ 0x00a2 ; 문자 출력을 위한 BIOS 코드 ; 올바른 BIN이 되도록 설정 org 0xD000 ; BIN 기준 주소 ; 시작 Execute: ld hl, HelloWorld ; hl에 HelloWorld 싣기 Print: ld a,(hl) ; 문자열 하나 읽기 cp 0 ; Null … “MSX 어셈블리어로 Hello, world! 바이너리 만들기 예제” 더 읽기

MSX 어셈블리어로 Hello, world! 롬 만들기 예제

MSX 컴퓨터에 꽂으면 “Hello, world!”라는 문자열을 출력하고 끝내는 롬팩 카트리지를 만든다고 가정하고 이를 어셈블리어로 코딩해 봅시다. CHPUT: equ 0x00a2 ; 문자 출력을 위한 BIOS 코드 ; 올바른 ROM이 되도록 설정 org 0x4000 ; ROM 기준 주소 db “AB” ; ROM 시그니처 dw Execute ; 시작 지점 지정 db 0,0,0,0,0,0,0,0,0,0,0,0 ; 시작 Execute: ld hl, HelloWorld … “MSX 어셈블리어로 Hello, world! 롬 만들기 예제” 더 읽기

8bitworkshop – 8비트 컴퓨터로 프로그래밍을 해 볼 수 있는 사이트

8비트 컴퓨터로 프로그래밍을 해 볼 수 있는 사이트 8bitworkshop.com을 소개합니다. 위 사이트에서는 8bitworkshop IDE라는 것을 제공하는데, 각 기기들에 맞는 개발 환경이 주어지고 그 기기의 환경을 에뮬레이션하여 프로그램의 실행 결과를 보여줍니다. 어셈블리어 기반 개발을 지원합니다. 요즘 컴퓨터는 임베디드 컴퓨터가 아닌 이상 굳이 어셈블리어를 쓸 필요가 없지만, 당대에는 BASIC, C 등의 고급 언어로 프로그래밍하면 그것을 컴파일러를 사용하여 … “8bitworkshop – 8비트 컴퓨터로 프로그래밍을 해 볼 수 있는 사이트” 더 읽기