정처기 4과목
a && b -> 1 AND연산
a || b -> 1 OR연산
!c -> 0 NOT연산
1 + 1 + 0 = 2 (최종정답)
# C언어 연산자에서는 0이 아닌 모든값은 1(TRUE)로 본다.
그래서 a=1 b=1 c=1 로 바꿔서 대입해도 같은결과가 나온다
정답 : 2
a랑 b는 리스트
i 가 0일 때
a[0]=0
b[0]=0
i 가 1일 때
a[1]=1
b[1]=2 (a[1]=1에 i=1를 더한거 1+1=2)
i 가 2일 때
a[2]=2
b[2]=4 (a[2]=2에 i=2 더하면 2+2=4)
b[i]는 a[i]에다가 곱하기 2하면 됨
…..
프린트할 거는 밑에 꺼니까
구하는 값은 A랑 B 더한 거
A랑 B는 변수
누적하는 거
i가 2씩 증가하고 10 전까지니까
i 에 0 2 4 6 8 넣어보면 됨
A랑 B는 초기값 0
i=0 일 때
A= 0+ a[0]=0 #A=0
B= 0+ b[0]=0 #B=0
i=2 일 때
A’ =0+ a[2]=2 #A’=2
B’ =0+ b[2]=4 #B’=4
i 가 4일 때
A” =2+ a[4]=4 #A”=6
B” =4+ b[4]=8 #B”=12
i가 6일 때
A’” =6+ a[6]=6 #A’”=12
B’”=12+ b[6]=12 #B’”=24
i가 8일 때
A””=12+a[8]=8 #A””=20
B””=24+b[8]=16 #B””=40
A””+B””=60
3번은 ip 프로토콜
내용결합도다. 공통 결합도 아님.
내용 결합도
-하나의 모듈이 직접적으로 다른 모듈의 내용을 참조할 때 두 모듈은 내용적으로 결합되어 있는 경우의 결합도
TIP : 쏼라 쏼라~ 내용 참조, 자료 참조 (단어가 있으면) 내용 결합도
공통 결합도
-파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호작용하는 경우의 결합도
TIP : 쏼라 쏼라 "전역변수" (단어가 있으면) 공통 결합도!
strcmp - 문자열 비교
strcat - 문자열 연결
[IP 프로토콜]
Total Packet Length (16 bits): IP 헤더 및 데이터를 포함한 IP 패킷 전체 길이를 바이트 단위로 길이를 표시. (최대값은 65,535 = 2^16 - 1)
Header Length는 IP 프로토콜의 헤더 길이를 32비트 워드 단위로 표시한다.
RIP는 OSPF와 함께 IGP(내부 게이트웨이 프로토콜)에 해당한다
[UNIX 운영체제]
주로 서버용 컴퓨터에서 사용됨
time sharing system을 위해 설계된 대화식 운영체제
c언어로 작성되어 이식성 높고, 장치간 호환성 높다.
Multi user, Multi tasking 모두 지원.
트리 구조의 파일시스템
1,2 -> 커널 수준 스레드의 장점
[IP 주소체계]
IPv4는 헤더가 가변적이고, 주소크기는 32bit
IPv6는 헤더가 40byte(320bit)로 고정되어 있고, 주소크기는 128bit / 128개의 주소를 표현할 수 있다.
p[0]=arr[0] -> p[0]+1=arr[0][1]=2
p[1]=arr[1] -> p[1]+2=arr[1][2]=6 2+6=8
p=arr[0]의 주소 -> p+1=arr[1] -> *(*(p+1)+0)=arr[1][0]=4
위와 같은 계산으로 *(*(p+1)+1=arr[1][1]=5 4+5=9
[해설작성자 : 강썬]
그림으로 그려보자
int arr[2][3] = {1,2,3,4,5,6};
int arr [2][3] 를 좀 쉽게 봐볼까요?
int arr [2] [3]
세로 가로
세로가 2개 가로가 3개
1 2 3
4 5 6 이렇게 상상해 보고 좀더 자세히 구분해 보아요
0 1 2
0 1[0][0] 2[0][1] 3[0][2]
1 4[1][0] 5[1][1] 6[1][2]
p[0]+1 는 [0][1] 와 같다. [0][1]에 들어 있는 숫자는 '2'이다.
p[1]+2 는 [1][2] 와 같다 [1][2]에 들어 있는 숫자는 '6'이다. 2+6 = 8
*(*(p+1)+0는 [1][0] 와 같다 [1][0]에 들어 있는 숫자는 '4'이다.
*(*(p+1)+1는 [1][1] 와 같다 [1][1]에 들어 있는 숫자는 '5'이다. 4+5= 9
문법 오류는 컴파일 시 에러가 발생하기 때문에 프로그램의 정상적인 실행이 불가능하므로 자바에서 정의한 예외 조건에 부합하지 않는다.
ICMP : 오류의 처리와 전송 경로 변경 등을 위한 제어 메시지를 관리하는 역할을 하는 프로토콜
[상호배제 기법]
데커의 알고리즘
- 프로세스가 두개일때 상호 배제를 보장하는 최초의 알고리즘
- flag와 turn 변수를 사용하여 조정
세마포어
- 공유된 자원의 데이터 혹은 임계영역 등에 따라 여러 Process 혹은 Thread가 접근하는 것을 막아줌(동기화 대상이 하나 이상)
램퍼드 알고리즘
-고유번호, 우선순위
피터슨 알고리즘
-데커와 비슷 ,진입기회 양보
str1[1]=str2[2] => str1의 KOREA중 O가 V로 변경
str1= KVREA
str2[3]=str1[4] =>str2의 LOVE중 E가 A로 변경
str2=LOVA
p1+2= str1[2]= R
[해설작성자 : 영남이공대 소프트웨어콘텐츠과]
덧붙이자면
strcat(str1, str2);에 의해
str1 => "KVREALOVA"가 됩니다.
[해설작성자 : 현직]
char str1 [20] = KOREA
*20개의 칸이 있고, 맨앞에서부터 KOREA가 들어감
char str2 [20] = LOVE
*20개의 칸이 있고, 맨앞에서부터 LOVE가 들어감
p1=str1 (p1을 str1이라고 여김)
p2=str2 (p2을 str2이라고 여김)
str1[1]=p2[2]
*p2(str2)의 2번째인 O를 str1(p1)의 1번째인 O에 삽입.
str1 = KVREA
str2[3]=p1[4]
*p1(str1)의 4번째 A를 str2(p2)의 3번째인 V에 삽입.
str2=LOVA
strcat에 의해 str2를 str1 뒤로 붙임.
KVREALOVE라는 값이 나옴.
여기서 p1+2(str1[2])를 구하면 2번째인 R.
**혹시나 해서 말하지만 첫칸은 1이 아니라, 0이에요.
1계층 - 물리계층(Physical Layer) : Coax, Fiber, Wireless
2계층 - 데이터 링크계층(DataLink Layer) : Ethernet, SLIP, PPP, FDDI, HDLC
3계층 - 네트워크 계층(Network Layer) : IP, IPSec, ICMP, IGMP
4계층 - 전송 계층(Transport Layer) : TCP, UDP, ECN, SCTP, DCCP
5계층 - 세션 계층(Session Layer) : VARIOUS API;S, SOCKETS
6계층 - 표현 계층(Presentation Layer) : SSL, FTP, IMAP, SSH
7계층 - 응용 계층(Application Layer) : HTTP, FTP, IRC, SSH, DNS
Ipv4는 32bit로 이루어져 있습니다
ip주소/서브넷마스크로 표기합니다
서브넷마스크숫자대로 앞에서부터 1을채워서 8개씩 끊어 계산하시면됩니다(2진수)
11111111.11111111.11111111.11100000
255 255 255 224
[해설작성자 : comcbt.com 이용자]
1의 개수가 27개
[해설작성자 : comcbt.com 이용자]
1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1
1의 개수가 27개
11111111 11111111 11111111 11100000
8 8 8 3
11100000 은 128 + 64 + 32 = 224
do while문: 최초 1번은 실행
do while문에서 cnt++ 후위 증가연산이 실행되므로
cnt=1 while 문의 조건이 0보다 작을경우이므로 루프를 빠져나옴
루프를 빠져나오고 if문 cnt=1 == 1 (참)
cnt++ 후위 증가연산 실행
System.out.printf 문에서 정수형으로 출력 → 정답은 2
페이지 크기가 작아질수록 -> 감소 : 내부 단편화, 페이지 맵 테이블 크기.
증가 : 입/출력 시간, 기억장소 이용 효율.
데이터 링크 계층 : 인접한 노드 사이의 프레임 전송 및 오류를 제어한다.
2. strlen() 함수 → string.h 에 포함되어 있습니다.
3. 표준 입출력 라이브러리 → stdio.h 입니다.
4. 삼각 함수, 제곱근, 지수 등 수학적인 함수 → math.h에 내장되어 있습니다
Recovery (복구) - (ex 선점, 프로세스 중지(희생자 선택)
Prevention(예방) - (ex 환형대기, 비선점, 점유와 대기, 상호배제 4가지 부정)
y = x++ 5 대입 후 증가 -> x = 6
z = --x 감소 후 5 대입 -> x = 5
페이지수행 시간 < 교환시간이 커질 때 발생하는 것 : 스레싱현상.
소프트웨어 아키텍처(Architecture) != 프레임워크 .(같은말 아님)
[리눅스]
echo $변수명 : 변수 출력
export : 환경변수 출력
연산자의 우선순위
우선순위 높음 --------------------------------------------------------> 우선순위 낮음
증감 연산자( ++ -- ) → 산술 연산자( * / % ) → 산술 연산자( + - ) → 시프트 연산자( << >> ) → 관계 연산자(=< => < > ) → 관계 연산자( == != ) → 비트 연산자( & ^ | ) → 논리 연산자( && ||) → 조건연산자(?:) → 대입연산자(= += *= /= %= <<= >>=) → 순서 연산자( , )
객체 기반으로 클래스 상속을 지원한다.
64.IEEE 802.3 LAN에서 사용되는 전송매체 접속제어(MAC) 방식은?
※IEEE 802의 표준 규약
(정)IEEE 802.3 : CSMA/CD
IEEE 802.4 : Token BUS
IEEE 802.5 : Token RING
IEEE 802.8 : Fiber optic LANS
IEEE 802.9 : 음성/데이터 통합 LAN
IEEE 802.11 : 무선 LAN(CSMA/CA)
(WAS)웹 애플리케이션 서버의 종류에는
Tomcat, GlassFish, JBoss, Jetty, JEUS, Resin, WebLogic, WebSphere 등이 있다
Thrashing : 지나치게 페이지 부재가 발생함으로 인하여 전체 시스템의 성능이 저하되는 현상
UNIX SHELL 환경 변수를 출력하는 명령어
:env , setenv, printenv
커널(kernel) : 프로세스(CPU스케줄링)관리(프로세스 생성/종료), 기억장치 관리, 파일관리, 입출력 관리, 프로세스간 통신, 데이터 전송 및 변환 등 여러가지 가능 수행
쉘(shell) : 시스템과 사용자간의 인터페이스 담당, 명령어 해석기
자바에서 while 문은 조건 식의 결과 값이 Boolean 이어야 한다. y--는 int이므로 오류가 발생한다.
UDP : 양방향 아님, 헤어 크기 작음
[PHP연산자]
@ : 에러 제어 연산자
< > : 관계 연산자
=== : 관계 연산자
[NS(Nassi-Schneiderman) chart]
직사각형 포개어가며 설명. 화살표로 사용하지 않는다.
프로그램으로 구현이 쉽다
조건이 복합되어 있는 곳의 처리를 명확히 식별하기에 적합하다.(if문이 여러개일때 가)
① Slow start: 패킷이 문제없이 도착하면 혼잡 윈도우 크기를 패킷마다 1씩 증가시켜 한 주기가 지나면 혼잡 윈도우 크기가 2배로 되지만, 혼잡 현상 발생시 혼잡 윈도우 크기를 1로 줄여버리는 방식이다.
② Slding WIndow: 한 번에 여러 패킷(프레임)을 전송할 수 있어 전송 효율이 좋은 기법
④ Congestion Avoidance(혼잡 방지, Congestion Control): 네트워크 내에서 패킷의 지연이 너무 높아지게 되어 트래픽이 붕괴되지 않도록 패킷의 흐름을 제어하는 트래픽 제어(종류: AMID, Slow Start)
스탬프 결합도
- 두 모듈이 매개변수로 자료를 전달할 때, 자료구조 형태로 전달되어 이용될 때 데이터가 결합되어 있다고 한다.
자료 결합도(data coupling)
어떤 모듈이 다른 모듈을 호출하면서 매게변수나 인수를 넘겨주고, 호출 받은 모듈은 받은 데이터에 대한 처리결과를 다시 돌려주는 방식
[FP(기능점수모) 기능별 가중치 산정요소]
자료 입력(입력 양식)
정보 출력(출력 보고서)
명령어(사용자 질의수)
데이터 파일
필요한 외부 루틴과의 인터페이스
클래스 인터페이스는 아니다.
[UML에서 활용되는 다이어그램 중, 시스템의 동작을 표현하는 행위(Behavioral) 다이어그램]
유시커상활타상