목록분류 전체보기 (553)
Self-Improvement
보호되어 있는 글입니다.
보호되어 있는 글입니다.
파일 읽기 File.new메소드, 파일 열고 닫기 r => 읽기 모드 w => 쓰기모드 r+ => 읽기 쓰기 모드 1 2 3 file=File.new("testfile","r") # ... 파일에 대한 file.close cs File.open File.open에 블록을 함께 사용하면 블록 실행이 끝나면 파일도 자동으로 닫아진다. 1 2 3 File.open("testfile","r") do |file| # ... 파일에 대한 처리 end # 자동으로 파일이 닫아짐 cs gets gets 메소드를 파일의 내용을 한 줄씩 읽어올 수 있으며 입력값으로 사용될 수 있다. 실행 시 인자로 파일을 준다면 파일의 내용을 읽어온다. 1 2 3 while line = gets puts line end cs 파일을 열어..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
블록 블록은 중괄호나 do와 end키워드로 둘러싸인 코드이다. each를 이용한 블록 예제 1 2 3 4 5 sum=0 [1,2,3,4].each do |value| sum+=value puts sum end cs yield를 이용한 블록 예제 메소드에서 yield문을 사용해서 마치 코드 블록을 하나의 메소드인 것처럼 호출할 수 있다. 1 2 3 4 5 6 7 8 def my_method yield yield end my_method do puts "hi" end cs 블록을 이용한 파일 내용 읽기 예제 1 2 3 4 5 f=File.open("testfile") f.each do |line| puts "Line : #{line}" end f.close cs with_index(읽은 라인 수 출력을 위한..
접근 제어 Public 메소드는 누구나 호출할 수 있으며 기본적으로 Public으로 선언된다. Protected 메소드는 그 객체를 정의한 클래스와 하위 클래스에서만 호출할 수 있다. Private 메소드는 오직 현재 객체의 문맥 하에서만 호출할 수 있다. 각 접근제어를 선언 후에 작성 예제코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 class Test def method1 p "public method1" end protected def method2 p "protected method2" end private def method3 p "private method3" end public def method4 p "public method4" end e..
이름으로 용도를 구분할 수 있는 표 지역 변수 name, fish_and_chips, _x, _26 인스턴스 변수 @name, @point_1, @x, @_ 클래스 변수 @@total, @@symtab, @@x_pos 전역 변수 $debug, $CUSTOMER, $_Golbal 클래스 이름 String, MyClass 상수 이름 FEET_PER_MILE, DEBUG 인자 읽고 쓰기 인자의 길이와 "p", "puts"로 쓰일때의 다른점 1 2 3 4 puts "arguments #{ARGV.size}" p ARGV p ARGV[3] puts ARGV cs 읽어들여 쓰기 예제코드 "p", "puts", "print" 차이 1 2 3 4 str=gets p str puts str print str cs 메소드..
보호되어 있는 글입니다.
레지스터 종류 R0 ~ R12 : 범용 레지스터 (다목적 레지스터), R11(스택 프레임 포인터) R0 : 함수 리턴 값 저장 (EAX 같은 느낌) R0 ~ R3 : 함수 호출 인자 전달 R13 ~ R15 : 특수 레지스터 R13(SP) : 스택 포인터 : 스택의 맨 위를 가리킴 R14(LR) : 링크 레지스터 : 서브루틴 후에 돌아갈 리턴 주소 저장 R15(PC) : 프로그램 카운터 : 현재 fetch되고 있는 명령어의 주소 - 따라서 현재 실행되는 명령어의 다음다음 주소 CPSR : 현재 프로그램 상태 레지스터 Instruction 분기 명령 B, BL 데이터 연산 명령 ADD, ADC, SUB, SBC, RSB, RSC, AND, ORR, BIC, MOV, MVN, CMP, CMN, TST, TEQ..