본문 바로가기

개발46

[컴퓨터구조] 컴퓨터 구조의 큰 그림 이 글은 '혼자 공부하는 컴퓨터구조+운영체제' 책의 내용을 정리하였습니다. 컴퓨터 구조의 지식은 크게 두 가지이다. 하나는 '컴퓨터가 이해하는 정보'이고, 또 하나는 '컴퓨터의 네 가지 핵심 부품'이다. 컴퓨터가 이해하는 정보 데이터: 컴퓨터가 이해하는 숫자, 문자, 이미지 동영상과 같은 정적인 정보를 가리킨다. 명령어: 데이터를 움직이고 컴퓨터를 작동시키는 정보 컴퓨터의 4가지 핵심 부품 주기억장치(메모리) 중앙처리 장치(CPU) 보조기억장치 입출력장치 메모리 프로그램이 실행되기 위해서는 반드시 메모리에 저장되어 있어야 한다. 메모리는 현재 실행되는 프로그램의 명령어와 데이터를 저장한다. 메모리에 저장된 값의 위치는 주소로 알 수 있다. CPU ALU: 계산기, 계산만을 위해 존재하는 부품. 컴퓨터 내.. 2023. 6. 25.
[C언어] 프로그래밍 개론/C언어 개론 '프로그래밍1 및 실습' 계절학기 전공기초 내용을 기반으로 작성합니다. 프로그램, 프로그래밍, 프로그래밍 언어 프로그램: 컴퓨터를 이용해 문제를 해결할 때 컴퓨터에 내리는 명령어들의 집합 프로그래밍: 컴퓨터가 이해할 수 있는 언어로 실행 프로그램을 만드는 것 프로그래밍 언어: 컴퓨터를 구동시키는 프로그램을 작성하기 위한 형식 언어 저급 언어와 고급 언어 저급 언어: 하드웨어 지향의 컴퓨터 내부 표현에 가까운 언어. 기계어와 어셈블리어로 구분됨 기계어: 2진수 형태의 0과 1로 작성하며 컴퓨터가 직접 이해할 수 있는 언어 어셈블리어: 기계어 명령을 간단한 기호로 표현한 언어 고급 언어: 사람이 이해하기 쉬운 일상 언어와 기호를 사용해 프로그램을 작성할 수 있으며, 저급 언어보다 이식성이 높음 대표적인 고급.. 2023. 6. 23.
[명품 자바 프로그래밍] 7장 - 제네릭과 컬렉션 컬렉션(collection)의 개념 - 요소(element) 객체들의 저장소객체들의 컨테이너라고도 불림요소의 개수에 따라 크기 자동 조절요소의 삽입, 삭제에 따른 요소의 위치 자동 이동- 고정 크기의 배열을 다루는 어려움 해소- 다양한 객체들의 삽입, 삭제, 검색 등의 관리 용이 컬렉션을 위한 자바 인터페이스와 클래스인터페이스CollectionMapSetListQueue 클래스HashSetArrayListVectorLinkedListHashMap  Stack  ** LinkedList는 List에도 속함*** ArrayList : 동기화 X, Vector : 동기화 O 컬렉션과 제네릭 - 컬렉션은 제네릭(generics) 기법으로 구현됨- 컬렉션의 요소는 객체만 가능기본적으로 int, char, doub.. 2023. 6. 7.
[명품 자바 프로그래밍] 6장 - 모듈과 패키지 개념, 자바 기본 패키지 패키지 개념과 필요성 디렉터리로 각 개발자의 코드 관리(패키지) 자바의 모듈(module)과 패키지(package)패키지서로 관련된 클래스와 인터페이스의 컴파일 된 클래스 파일들을 하나의 디렉터리에 묶어 놓은 것모듈여러 패키지와 이미지 등의 자원을 모아 놓은 컨테이너JDK 9부터 자바 API의 모든 클래스들(자바 실행 환경)을 패키지 기반에서 모듈들로 완전히 재구성응용프로그램 역시 여러 개의 모듈로 분할하여 작성 가능목적자바 API를 여러 모듈(99개)로 분할하여 응용프로그램의 실행에 적합한 모듈로만 실행 환경을 구축할 수 있도록 함메모리 등의 자원이 열악한 작은 소형 기기에 꼭 필요한 모듈로 구성된 작은 크기의 실행 이미지를 만들기 위함모듈의 현실java 9부터 전면적으로 도입, 복잡한 개념, 큰 자바.. 2023. 6. 3.
[Java] substring( ) 메소드 substring( ) 메소드 java.lang.String 클래스 문자열의 특정 부분을 잘라내는 데 사용 substring() 메소드 사용 형태 substring(int startIndex) - startIndex부터 끝까지의 문자열을 리턴 substring(int startIndex, int endIndex) - startIndex(포함)부터 endIndex(불포함)까지의 문자열을 리턴 명품 자바프로그래밍 - 실습 문제 8 번 예제 실행 코드 import java.util.Scanner; public class stringRotation { public static void main(String[] args){ Scanner scanner = new Scanner(System.in); System.o.. 2023. 5. 29.
[Git] git 공부 Day2 - 로컬에서 깃허브로 요즘 과제하고 vs코드에서 터미널로 커밋과 푸시를 하는 과정을 적으러 왔습니다! 아래 글은 깃 기초 정리니! 참고해 주세요! [개발/TIL] - [Git] git 공부 Day1 아예 처음 vs코드에서 깃허브에 연결하는 거라면 $ git clone 레포지토리 주소 위의 깃 클론을 치고 띄어쓰기 한 번 후 레포지터리에 code 부분을 눌러 위에 보이는 HTTPS를 복사하여 옆에 바로 써주면 된다. $ git checkout main $ git checkout -b 브랜치 이름 그다음 바로 메인 브랜치에서 작업해도 되지만, 함께 쓰는 레포지터리기 때문에 개인 브랜치를 파서 작업한다! 즉 위의 코드는 메인 브랜치에서, 새로운 브랜치를 작성하는 과정이다! 위의 과정이 끝난 후는! (브랜치는 매번 새로 팔 수 있지.. 2023. 5. 26.