반응형

전체 글 469

[책] 컴퓨터 아키텍처 - 05. 데이터와 디지털 논리 회로

데이터와 디지털 논리 회로데이터의 개요컴퓨터는 제한된 데이터 형식만 구현하여 사용한다.데이터의 종류수치 데이터 : 고정 소수점으로 표현되는 정수와 부동 소수점으로 표현되는 실수.비수치 데이터 : 모든 문자, 기호, 한글 등을 코드로 나타낸 것.데이터의 형식데이터 형식 : 컴퓨터에서 제공하는 명령어 집합으로 연산할 수 있는 정보의 표현.간단한 데이터 형식으로 정수, 불리언, 문자, 부동 소수점 등이 존재. 복잡한 데이터 형식은 문자열, 배열, 벡터, 집합, 레코드, 스택, 큐 등이 존재.데이터와 진법컴퓨터는 데이터를 2가지 상태로만 표현할 수 있어 2진법을 사용함.모든 프로그램 코드나 데이터가 2진법 형식으로 저장되며 이 2진법은 정수, 실수, 문자와 같은 데이터 뿐만 아니라 명령어도 될 수 있고, 그래픽..

etc/책 리뷰 2019.03.15

[책] 컴퓨터 아키텍처 - 04. 명령어 집합의 분류와 주소 지정 방식

명령어 집합의 분류와 주소 지정 방식피연산자의 수와 명령어 집합명렁어 : 어떤 연산을 수행할 것인가를 나타내는 연산 부호 와 연산될 데이터에 대한 정보를 포함하는 피연산자로 구성됨.연산 부호 : 특별한 경우 아니면 하나의 필드에 존재피연산자 : 여러 개의 필드로 구성 가능.0-주소 명령어(스택 컴퓨터), 1-주소 명령어(누산기 컴퓨터), 2-주소 명령어 및 3-주소 명령어(범용 레지스터 컴퓨터)누산기 컴퓨터메모리-메모리 컴퓨터 : CPU 내부에 데이터 저장하는 기억장치 없음누산기 컴퓨터 : 해당 컴퓨터에 하나의 데이터를 저장하기 우히나 레지스터를 추가한 컴퓨터.누산기를 묵시적 피연산자로 사용. (유일하게 데이터를 저장할 수 있기에 굳이 명시할 이유 없기 때문)적재 혹은 저장 명령어가 아니면 누산기는 근원..

CS/컴퓨터 구조 2019.03.06

[책] 컴퓨터 아키텍처 - 03. 명령어 집합

명령어 집합 컴퓨터가 작업을 수행하려면 인식할 수 있는 명령어가 있어야 함. 명령어 집합 명령어 집합의 의미 프로그램은 높은 프로그래밍 생산성, 컴파일 오류 탐지 및 유지보수의 용이함 등과 같은 장점을 가진 고급언어로 작성된다. 하지만 프로그램은 컴파일러나 인터프리터 등을 통해 기계 명렁어로 변환되어야만 인식되거나 하드웨어에서 실행될 수 있다. 명령어 : CPU 가 수행할 동작을 2진수 코드로 정의한 것. 일반적으로 연상부호를 사용한 어셈블리 형태로 표현함. 명령어 집합 : 특정 CPU 를 위해 정의된 명령어의 모음 명령어 집합 구조 명령어 집합 구조(Instruction set architerture) : 프로그램을 수행할 하드웨어 시이의 인터페이스에 대한 완전한 정의 및 명세이다. 하드웨어가 어떤 연..

CS/컴퓨터 구조 2019.02.18

[책] 컴퓨터 아키텍처 - 02. 컴퓨터의 발전과 성능

컴퓨터의 발전과 성능컴퓨터의 세대별 발전반도체의 획기적인 발전에 따라 컴퓨터 환경은 크게 진화함.컴퓨터 : 전자회로를 이용해 다양한 종류의 데이터를 처리하는 장비.그렇다면 각 컴퓨터의 세대별 특징을 살펴보도록 하자.컴퓨터의 세대주요 소자기억장치특징0세대 컴퓨터기계적 릴레이금속 기어, 카드-1세대 컴퓨터 (~1950년대 후반)진공관자기드럼하드웨어 개발 중점. 부피 크고 전력 소모 많음.2세대 컴퓨터 (~1960년대 초반)트랜지스터자기코어고급언어 등장3세대 컴퓨터 (~1070년대 중반)SSI,MSIRAN, ROM운영체제 개발, 다중 프로그래밍, 고급언어 활용4세대 컴퓨터 (~2000년대)LSI, VLSISRAM, DRAM객체지향언어 사용, 개인용 컴퓨터 등장, 병렬 처리 기능 강화5세대 컴퓨터 (2000년대..

CS/컴퓨터 구조 2019.02.08

[책] 컴퓨터 아키텍처 - 01. 컴퓨터와 시스템

컴퓨터와 시스템컴퓨터 시스템의 개념적 구성컴퓨터는 일반적으로 하드웨어(hardware), 소프트웨어(software) 로 구성됨.하드웨어 : 시스템을 구성하는 물리적 부붐으로 이루어진 전자적, 기계적 장치 소프트웨어 : 하드웨어에 작업을 수행할 순서와 방법을 지시하는 명령어로 구성된 프로그램 및 프로그램 수행에 필요한 절차, 규칙, 관련 문서 등을 총칭쉽게 말해서 하드웨어는 컴퓨터 부품을 생각하면 되고, 소프트웨어는 어떠한 명령어를 통해 하드웨어를 사용할 수 있게 만들 수 있게 하는 것이라고 생각하면 될 것 같다.컴퓨터 시스템의 4대 기능컴퓨터 시스템은 입력, 처리, 저장, 출력을 수행한다.입력 : 입력장치를 통해 외부 세계에서 내부 세계로 정보를 받아들이는 기능. (ex. 키보드) 처리 : 입력된 정보..

CS/컴퓨터 구조 2019.02.06

[Spring] Spring security + jwt, 토큰 요청 시 "잘못된 자격증명" 뜰 시

잘못된 자격증명 이 뜨는 경우가 많으나 그 중 한 가지 경우에 대해 이야기를 해보려고 한다. 사진과 같이 토큰을 요청했다. 현재 DB에는 다음과 같은 정보가 들어있다. username : robin.kwon@opensurvey.co.kr password : (passwordEncoder.encode("pasword") 를 한 값) 이 때 사진과 같이 정상적으로 요청을 했을 때도 잘못된 자격증명 이라는 오류를 뱉는다. 생각을 해보니 DB 에 있는 `robin.kwon@opensurvey.co.kr` 이란 데이터의 encoding 된 password 값이 일치하지 않아 발생하는 것 같다고 생각했다. 즉, 토큰 요청 시 다음과 같이 동작되야 토큰 요청이 정상적으로 수행이 될 것이다. passwordEncord..

개발/Spring 2019.01.30

[책 ] 객체지향의 사실과 오해

객체지향의 사실과 오해를 읽으며 작성한다. 객체지향이란? 책을 읽으며 처음 내가 자바를 배우면서 알게된 객체지향 에 대한 내용이 첫 챕터에 나온다. 책에서 실세계에 비유하여 설명을 해준다. 그래서 이해가 더 잘되며 기억에도 더 남는 것 같았다. 해당 책에서 객체지향의 개념에서도 얘기를 한다. 객체지향이란 시스템을 상호작용하는 자율적인 객체들의 공동체로 바라고 객체를 이용해 시스템을 분할하는 방법 여기서 자율적인 객체 란 상태와 행위를 지니며 스스로 자기 자신을 책임지는 객체를 의미한다. 또한, 이 책에서는 객체지향에 있어서 가장 중요한 것은 클래스 가 아니라고 한다. 물론, 클래스도 중요하지만 객체의 역할, 책임, 협력 에 집중하라고 한다. 즉, 어떤 객체들이 어떤 메세지를 주고 받으며 협력하는가가 객체..

etc/책 리뷰 2019.01.24

[deprecated] Spring security permitAll 이 동작하지 않을 때

해당 글은 제가 어떤 문제가 일어났었는지, 왜 이렇게 해결했는지에 대한 내용이 없어 잘못된 내용을 전달하고 있다고 생각이 되어 아래 내용은 무시해주시면 감사하겠습니다. 추후 다시 spring security 에서 cors, csrf 에 관한 글을 다시 작성해서 링크를 첨부하도록 하겠습니다 (2021-07-24) @Override protected void configure(HttpSecurity http) throws Exception { http.authorizeRequests() .antMatchers("/api/users/login") .permitAll() .antMatchers("/api/**") .authenticated(); } 위의 코드를 작성했을 때 실제 /api/users/login 에..

deprecated 2019.01.24

[Spring] eureka discovery 서버에 eureka client 등록이 되지 않을 때

eureka disconvery servcer 에 eureka client 가 등록이 되지 않을 때 방법이다. eureka client 의 application.yml 은 다음과 같다. 참고로 꼭 spring.application.name 은 등록해줘야 한다. spring: application: name: oauth-api eureka: client: serviceUrl: defaultZone: ${EUREKA_SERVICE_URL:http://localhost:8761/eureka} instance: preferIpAddress: true eureka client 서버의 Main 클래스에 @EnableEurekaClient 달아줬는지 확인. 이렇게 @EnableEurekaClient 어노테이션을 달아..

개발/Spring 2019.01.17

만화로 배우는 리눅스 시스템 관리 후기

우선 만화로 리눅스 용어나 명령어를 소개해줘서 쉽게 이해가 잘 됐다.목차를 보면 알겠지만 정말 기초적인 내용들이 나오는데 그래도 해당 명령어를 사용하는 순간에 대한 예시를 적절하게 들어줘서 이해가 잘됐다. 좋다고 생각하는 부분들은 목차마다 직접 Q&A 해주는게 나오는데 그게 좋았다. 예를 들어 scp, rcp 차이? 이런 것들이 나와서 좋았다. 계속 리눅스 명령어를 사용해봐야 기억에 남고 손에 남을텐데 따로 사용할 일이 없어서 따로 centos 설치해서 이것저것 해보고 있는데 도움이 많이 되었다. 리눅스 처음 접해보는 사람이나 잘 모르는 사람은 이 책을 읽으면 도움이 많이 될 것 같다.

etc/책 리뷰 2019.01.14
반응형