전체 글

contains() --문자열 내에 다른 문자열이 포함되어 있는지 여부를 확인하는 메서드다. 가장 직관적이고 일반적으로 사용하는 메서드대소문자 구분 contains() 메서드 형식문자열.contains(특정 문자열); 예시 코드String str = "Hello, world!";boolean result1 = str.contains("world"); // trueboolean result2 = str.contains("www"); // false--
명령어를 병렬로 처리는 방법의 종류는 무엇이 있을까?      명령어 병렬 처리 기법 (ILP, Instruction-Level Parallelism) --속도가 빠른 CPU를 만들기 위해높은 클럭 속도, 멀티코어, 멀티스레드를 지원하는 CPU를 만드는 것도 중요하지만,CPU가 놀지 않고 시간을 알뜰하게 사용하며 동작하도록 하는 것도 중요하다. 바로 명령어 병렬 처리 기법이명령어를 병렬로 동시에 처리하는 방법으로CPU가 쉬지 않고 끊임없이 동작하게 하는 기법이다. 대표적인 "명령어 병렬 처리 기법"명령어 파이프라인(파이프라이닝)슈퍼스칼라비순차적 명령어 처리--    명령어 파이프라인 --명령어 파이프라인은명령어 처리에 대한 과정을 각 단계로 분리하고해당 단계를 동시에 실행할 수 있도록 하는 기술이다. 비..
클럭, 멀티코어, 멀티스레드가 무엇이길래 CPU 성능 향상에 사용될까?      클럭 (Clock) --클럭은CPU의 제어장치와 전체 CPU가 동작하는 데 중요한 역할을 하는 신호로,해당 신호를 이용하여 CPU 내의 모든 동작을 동기화하는 데 사용된다. 조금 더 설명하자면일정한 주기로 반복되는 신호를 클럭이라고 부르며해당 신호의 각 주기는 CPU가 한 명령어를 처리하는 데 필요한 클럭의 단위로 구분 짓는 데 사용된다. 간단하게 컴퓨터의 모든 부품을 알맞게 동작할 수 있도록 하는 시간 단위라고도 할 수 있다. 그래서 CPU의 동작 속도를 나타내는 척도로CPU 내부에서 발생하는 전기적 펄스의 빈도를 의미한다.(해당 펄스는 CPU가 명령어를 처리하는 속도를 결정하게 된다.) 정리컴퓨터 부품들은 정해진 "클럭 ..
명령어 사이클은 무엇이고인터럽트는 무엇일까?      명령어 사이클 --CPU가 하나의 명령어를 처리하는 과정에는정해진 흐름이 존재하는데이렇게 정해진 흐름이 "명령어 사이클"이다. 즉, 프로그램 속에서 각 명령어들을 일정한 주기로 반복되며 실행되는데, 해당 주기를 의미한다.  명령어 사이클의 각 단계들인출 사이클 (Fetch Cycle)실행 사이클 (Execute Cycle)간접 사이클 (Indirect Cycle)이 외에도 해석 사이클(Decode Cycle), 쓰기 단계(Write Back Cycle) 등이 존재한다.   인출 사이클 (Fetch Cycle) 메모리에 존재하는 명령어를 CPU로 가져오는 단계를 의미한다.  실행 사이클 (Execute Cycle) "인출 사이클"을 통해 CPU로 가져온..
replace() 주어진 문자열(String)에서 특정 문자를 다른 문자로 치환 or 특정 문자열을 다른 문자열로 치환할 수 있다.""로 대체하면 제거되는 결과와 동일하다. 다만 정규식을 사용할 수 없어 한 번에 하나의 문자나 문자열에 대해서만 치환이 가능하다. String str = "hello world";char target = 'o';// target 문자를 빈 문자열로 대체 (제거)String result = str.replace(Character.toString(target), "");// String result = str.replace("o", "");System.out.println(result); // "hell wrld"    replaceAll() 주어진 문자열(String)에서 ..
문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/120817 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr     문제----     풀이--class Solution { public double solution(int[] numbers) { double sum = 0; for(int i = 0; i --     다른 풀이--import java.util.Arrays;class Solution { public double solution(i..
레지스터는 무엇이고 어떠한 종류들이 있을까?      레지스터 (Register) --레지스터는CPU 내부에 있는 고속의 소형 저장 장치로,주로 데이터와 명령어를 일시적으로 저장하는 데 사용된다. CPU가 명령어를 처리하고 연산을 수행하는 데 필수적인 요소로,CPU 내부의 데이터 처리를 빠르게 수행할 수 있도록 도와준다. 프로그램 속 명령어와 데이터는 실행 전/후로 반드시 레지스터에 저장된다.따라서 레지스터에 저장된 값만 잘 관찰해도 해당 프로그램의 실행 흐름을 파악할 수 있다. CPU 내부에는 다양한 레지스터들이 존재하고 각자 다른 역할을 가지고 있다. 레지스터들은 CPU마다 이름, 크기, 종류가 매우 다양하고,사용하는 CPU의 제조사 홈페이지나 공식 문서 등에서 사용하는 레지스터들의 정보를 확인할 수..
문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/120820 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr     문제----     풀이--class Solution { public int solution(int age) { int now = 2022; return now + 1 - age; }}--     다른 풀이--class Solution { public int solution(int age) { return 2022 - age..