전체 글 48

[밑바닥부터] 6일차 - 2장 불 연산: 반가산기, 전가산기 구현

반가산기, 전가산기 구현반가산기진리표abcarrysum0000100101011110진리표를 확인했을 때, carry는 and 연산이고 sum은 xor 연산임을 확인할 수 있다.HDL CHIP HalfAdder { IN a, b; // 1-bit inputs OUT sum, // Right bit of a + b carry; // Left bit of a + b PARTS: And(a = a, b = b, out = carry); Xor(a = a, b = b, out = sum); }전가산기진리표abccarrysum0000000101010010111010001101101101011111반가산기를 사용해서 구현해보자. a + b + c의 결..

[밑바닥부터] 5일차 - 2장 불 연산: 가산기 아키텍처, ALU 설계

가산기 아키텍처, ALU 설계명세가산기(adder)부터 산술 논리 장치(ALU)까지 칩들을 계층적으로 정의한다.칩이 무엇을 위해 설계되는지 추상화 레벨부터 살펴보고 칩을 어떻게 만드는지 자세한 구현을 학습한다.이번 장에서 학습 하는 내용은 음수, 0이상의 수, 부호가 섞인 수 모두 정상적으로 연산할 수 있다.가산기가산기는 간단하게 설명하면 다음과 같다.반가산기(half-adder)두 비트를 더한다.전가산기(full-adder)세 비트를 더한다.가산기(adder)두 개의 n비트 숫자를 더한다.증분기(incrementer)특수 목적용 가산기주어진 숫자에 1을 더한다.반가산기2진수 덧셈의 첫 단계로 두 비트를 더한다.입력(a, b)과 출력(carry, sum)에 대한 진리표abcarrysum0000100101..

[코딩자율학습단 스프링부트] 1일차 - 스프링부트 시작하기

스프링부트 시작하기스프링부트란스프링부트는 자바 웹 프로그램을 더 쉽고 빠르게 만들기 위한 도구이다.스프링을 개선해서 환경 설정을 간소화하고 WAS를 내장하여 jar로 쉽게 배포할 수 있도록 도와준다.스프링부트 개발 환경 설정하기스프링부트를 사용하려면 먼저 JDK를 설치해야 한다.Java로 코드를 작성하고 컴파일하고 실행시키려면 Java가 설치되어야 하기 때문이다.거기에 IDE를 설치한다.인텔리제이를 써도 되고, 비주얼스튜디오 코드나 이클립스를 사용해도 된다.나는 PC에는 인텔리제이, 노트북에는 vscode를 이미 설치해두었다.자동완성 같은 개발 편의성면에서는 프로젝트 자체를 메모리에 모두 올려서 사용하는 인텔리제이가 좋다. 그러나 하드웨어 성능을 고려하자. 노트북은 메모리가 적어서 vscode로 편집만 ..