오블완 21

[mano의 컴퓨터시스템 구조] 5장 기본 컴퓨터의 구조와 설계

mano의 컴퓨터시스템 구조: 5장 기본 컴퓨터의 구조와 설계5.1 명령어 코드저장 프로그램 구조컴퓨터의 가장 간단한 구성은 한개의 프로세서 레지스터를 두 개의 부분으로 구성된 명령어 코드를 사용하는 것이다.한 부분은 실행할 연산, 다른 한 부분은 레지스터에 저장된 메모리내 주소를 기술4096은 방의 개수, 16은 방의 크기를 의미4096*16은 16비트의 방이 4096개 존재하는 메모리를 의미간접 주소직접주소(Direct address): 피연산자의 내용이 담고 있는 장소의 주소를 저장하고 있는 메모리 워드의 주소간접주소(Indirect address): 주소의 내용을 담고 있는 장소의 주소를 저장하고 있는 메모리 워드의 주소(a)는 3비트의 연산 코드와 12비트의 주소, I로 표시되는 간접 주소 모드..

[운영체제 공룡책] 4장 Threads &Concurrency

4.1 Overview스레드는 스레드 ID, 프로그램 카운터(PC), 레지스터 세트 및 스택으로 구성되는 CPU 활용의 기본 단위이다. 4.1.1 Motivation멀티스레드의 개념대부분의 현대 소프트웨어는 여러 스레드로 구성된 멀티스레드 방식으로 동작.하나의 프로세스 내에서 여러 작업을 병렬로 처리하여 효율성을 높임.  멀티스레드와 멀티코어 시스템:멀티스레드는 멀티코어 CPU에서 병렬 처리를 활용하여 CPU 집약적인 작업을 동시에 수행 가능.데이터 마이닝, 그래픽 처리, 인공지능 등에서 병렬 처리로 성능 향상.멀티스레드의 효율성:단일 스레드 웹 서버의 경우 하나의 클라이언트 요청만 처리 가능 → 대기 시간이 길어짐.전통적인 방식인 프로세스 생성은 리소스와 시간이 많이 소모됨.멀티스레드 방식에서는 클라이..

[C언어로 쉽게 풀어쓴 자료구조] 8장 트리 - Ⅰ

C언어로 쉽게 풀어쓴 자료구조: 8장 트리 8.1 트리의 개념계층적인 자료를 표현하는데 적합한 자료구조 차수: 어떤 노드가 가지고 있는 자식 노드의 개수계층에 따라 부모, 자식, 형제, 자손 등 관계가 만들어짐 8.2 이진 트리 소개모든 노드가 2개의 서브 트리를 가지고 있는 트리를 이진 트리(binary tree)라고 한다.공집합이거나 루트와 왼쪽, 오른쪽 서브 트리로 구성된 노드들의 유한 집합으로 정의된다. 이진 트리의 성질n개의 노드를 가진 이진트리는 정확하게 n-1의 간선을 가진다.높이가 h인 이진 트리의 경우, 최소 h개의 노드를 가지며 최대 (2^h) - 1 의 노드를 가진다.8.3 이진 트리의 표현https://seongkyun.github.io/data_structure/2019/08/01..

[C언어로 쉽게 풀어쓴 자료구조] 7장 연결리스트 - Ⅱ

C언어로 쉽게 풀어쓴 자료구조: 7장7.1 원형 연결 리스트마지막 노드가 첫 번째 노드를 가리키는 리스트이다.하나의 노드에서 다른 모든 노드로의 접근이 가능하다. 원형 리스트의 처음에 삽입ListNode* insert_first(ListNode* head, element data){ ListNode *node = (ListNode *)malloc(sizeof(ListNode)); node->data = data; if (head == NULL) { head = node; node->link = head; } else { node->link = head->link; // (1) head->link = node; // (2) } return head; // 변경된 헤드 포인터를 반환한다. }새로운 ..

[데이터 통신과 네트워킹-TCP/IP프로토콜 기반] 3장 데이터 링크층

데이터 통신과 네트워킹-TCP/IP프로토콜 기반: 3장 데이터 링크층3.1 개요3.1.1 노드와 링크노드(node): 두 종단 호스트와 라우터를 노드로 표현링크(link): 노드 사이의 네트워크를 링크로 표현3.1.2 링크의 두 가지 유형점-대-점(point-to-point link)링크는 서로 연결된 2개의 장치가 전용으로 이용한다. ➡️ 일반 가정집 전화 브로드캐스트 링크(Broadcast link)링크는 여러 장치의 쌍들이 공유된다.➡️ 휴대폰 3.1.3  2개의 부계층 데이터 링크 제어(DLC, Data Link Control)점-대-점, 브로드캐스트에 연관된 공통 사항 다룸 매체 접근 제어(MAC, Media Access Control)브로드캐스트 링크에 관한 사항 다룸3.2 데이터 링크 제어 ..

[mano의 컴퓨터시스템 구조] 4장 레지스터 전송과 마이크로 연산

mano의 컴퓨터시스템 구조: 4장 레지스터 전송과 마이크로 연산 4.1 레지스터 전송 언어마이크로연산: 레지스터에 저장된 데이터를 가지고 실행되는 동작: 시프트(Shift), 카운트(Count), 클리어(Clear), 로드(Load) 등4.2 레지스터 전송(Register Transfer)기본 용어메모리 주소 레지스터(MAR, memory Address Register)프로그램 카운터(PC, Program Counter)명령어 레지스터(IR, Instruction Register)프로세스 레지스터(R1, Processor Register)레지스터 사이 정보 전송R2 ← R1    다음과 같이 치환(Replacement) 연산자를 이용화살표(→): 정보 전송 및 방향.쉼표(,): 동시에 실행되는 두 개 ..

[운영체제 공룡책] 3장 ProcessManagement

운영체제 공룡책: 3장 Process Management3.1 Process Concept프로세스 정의:실행 중인 프로그램을 의미하며, 프로그램 카운터와 프로세서 레지스터의 상태로 현재 활동이 표현됨. 프로그램과의 차이점:프로그램은 디스크에 저장된 명령어의 집합으로 수동적(entity)이다.프로세스는 실행 중이며 자원을 가진 능동적(entity)이다.3.1.1 The Process프로세스 메모리 구조:텍스트 섹션: 실행 코드 (크기 고정).데이터 섹션: 전역 변수 (크기 고정).스택: 함수 호출 시 매개변수, 반환 주소, 지역 변수를 저장하며 동적으로 변함.힙: 동적 메모리 할당 시 확장 및 축소 가능. 프로세스와 작업(job)의 관계:프로세스는 현대적 용어, 작업(job)은 초기 운영체제의 용어로 역사..

인공지능을 활용한(?) 주식 저평가 종목 투자하기

공부가 재미 없어서 인공지능을 활용한 주식 투자를 해보려고 한다.  네이버 증권 주식 재무제표 데이터는 api를 받아올 수 없다고 한다.  어쩔 수 없이 크롤링을 통해 데이터를 긁어보도록 하자   1. 종목 코드를 알아야 한다.한국 거래소(krx)에서 코스피, 코스닥의 종목 코드가 포함된 업종분류형황을 다운받는다.  B행에 모든 종목 코드가 있는 파일을 구했다.    2.  위에서 구한 종목코드를 사용해서 주식 재무재표 크롤링 하기 이러쿵 저러쿵 크롤링을 진행하여 코스피와 코스닥에 있는 모든 종목의 매출액, 영업이익, 영업이익률, ROE, EPS, PER, PEG, 영업이익증가율을 근 3년간 데이터와 근 4분기의 값을 수집하였다.데이터가 많아서 그런지 수집하는데 반나절은 걸린듯 하다..    3. 저평가..

취미생활 2024.11.19