1~ 입력받은 수(2byte)까지의 3의 배수를 구하고 그 수를 출력, 합을 출력

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

mov rbp, rsp; for correct debugging

GET_DEC 2, input

 

L_loop:

add [for_index],word 1 ; 반복 인덱스값 증가

 

;인덱스값이 3의 배수인지 판별하려고 3으로나눠봄

mov eax, [for_index]

;dx에 전반부 ax에 후반부로 나눠야 계산이됨 - 실제 저장된건 리틀엔디안 스타일이기에 값으로는 반대

mov edx, eax

shr edx, 16

 

and eax, 0x0000ffff

 

mov bx, 3

div bx ; 값은 ax에 몫, dx에 나머지가 저장됨

 

cmp dx, 0 ; 나머지가 0인지 판별하려고함

jne L_after_save ;0이 아니라면 데이터배열에 저장하지않음

 

;데이터배열에 저장

mov eax, 0

mov ax, [data_index]

mov bx, [for_index]

mov [data + eax * 2], bx

inc ax

mov [data_index], ax

 

L_after_save:

mov bx, [for_index]

cmp bx, [input]

jne L_loop; for_index가 입력된 값과 같을때까지 반복

 

; 저장된 값 출력

PRINT_STRING str_print_start

mov eax, 0

L_print_loop:

;3의 배수값 출력 + 합구하기

mov dx, [data + eax * 2]

add [total], dx

PRINT_DEC 2, dx

PRINT_STRING str_comma_space

 

inc ax

 

mov bx, [data_index]

cmp ax, bx

jne L_print_loop

 

NEWLINE

;저장된 개수

PRINT_STRING str_count

PRINT_DEC 2, [data_index]

NEWLINE

;합

PRINT_STRING str_total

PRINT_DEC 2, [total]

NEWLINE

 

xor rax, rax

ret

 

section .bss

data resw 100

input resw 1

section .data

data_index dw 0

for_index dw 0

total dw 0

;msg

str_print_start db '3의 배수 : ',0x00

str_comma_space db ', ',0x00

str_count db '3의 배수 갯수 : ',0x00

str_total db '총합 : ',0x00

 

2byte수를 한 개 입력 받아(10진수) 이 숫자를 2진수로 출력하라

막혔음... 

c로 하면 간단한데 어디서 문제가 생긴지 모르겠다.

 

 

 

 

'NASM' 카테고리의 다른 글

10일차.  (0) 2020.06.24
8일차.  (0) 2020.06.21
7일차.  (0) 2020.06.20
6일차.  (0) 2020.06.19
5일차.  (0) 2020.06.18

배열 복사...  디버깅 테스트용

디버깅 메뉴에서 show memory 에 들어가면 각 변수별 관찰이 가능하다.

변수이름을 적고 타입을 정하면 실행시 자동으로 값이 보임

주소값으로도 볼 수 있는데 왼쪽의 address를 꼭 체크해야 된다.

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov eax, my1

mov ebx, you1

 

mov edx, 0

mov ecx, 3

 

L1:

mov eax, [my1 + edx * 2]

mov [you1 + edx * 2], eax

inc edx

loop L1

 

mov edx, 0

L2:

PRINT_HEX 2, my1 + edx * 2

NEWLINE

inc edx

cmp edx, 3

jl L2

 

xor rax, rax

ret

 

section .data

my1 dw 0x1234, 0x4567, 10

 

section .bss

you1 resw 3

4- 문제

2바이트 수 한개를 입력받고 1 ~ 입력받은수 까지의 3의 배수만 배열에 저장하고 그 개수와 값을 출력

 

풀다가 못풀었음.; 내일로 미룸

'NASM' 카테고리의 다른 글

10일차.  (0) 2020.06.24
9일차  (0) 2020.06.23
7일차.  (0) 2020.06.20
6일차.  (0) 2020.06.19
5일차.  (0) 2020.06.18

반복문

 

%inlucde "io64.inc"

section .text

global CMAIN

CMAIN:

;write your code here

mov ax, 0

mov ecx, 10

 

L_loop:

add ax, cx

loop L_loop

 

PRINT_DEC 2, ax

NEWLINE

 

xor rax, rax

ret

 

inc,  1증가

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax,0

mov bx,1

mov cx,10

L_L1:

add ax,bx

inc bx

loop L_L1

 

PRINT_DEC 2, ax

NEWLINE

 

xor rax, rax

ret

 

 

 

do while

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax,0

mov bx,0

L1:

add ax, bx

inc bx

cmp bx, 10

jle L1

 

PRINT_DEC 2,ax

NEWLINE

xor rax, rax

ret

 

 

while

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax,0

mov bx,0

L1:

cmp bx, 10

jg L2

add ax, bx

inc bx

jmp L1

L2:

PRINT_DEC 2, ax

NEWLINE

xor rax, rax

ret

 

 

배열 접근하기 

 

include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov al, [a]

PRINT_DEC 1, al

NEWLINE

 

mov al, [a+1]; a는 1바이트 크기

PRINT_DEC 1, al

NEWLINE

 

mov ax, [b]

PRINT_HEX 2, ax

NEWLINE

 

mov ax, [b + 1 * 2]

PRINT_HEX 2, ax

NEWLINE

 

mov ax, [b + 2 * 2]

PRINT_DEC 2, ax

NEWLINE

 

xor rax, rax

ret

 

section .data

a db 30,50,60

b dw 0x1234, 0x5678, 10

 

배열 복사.

포인트는 괄호 내부안에 들어가는 레지스터 변수는 무조건 4바이트 변수로 넣을것 밑에 보면 인덱스를 굳이 eax로 한 이유임 

include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov eax, 0

mov ecx, 3

 

L1:

mov ebx,[origin + eax * 2]; eax에 인덱스값을 저장 2바이트크기 변수임

mov [copy + eax * 2], ebx

inc eax

loop L1

 

mov edx, copy;edx에 copy시작주소를 넣음.. 왜?

mov eax, 0

L2:

PRINT_HEX 2, [edx + eax * 2]

NEWLINE

inc eax

cmp eax,3

jl L2

 

xor rax, rax

ret

 

section .data

origin dw 0x1234,0x4567, 0x8912

section .bss

copy resw 3

 

 

'NASM' 카테고리의 다른 글

9일차  (0) 2020.06.23
8일차.  (0) 2020.06.21
6일차.  (0) 2020.06.19
5일차.  (0) 2020.06.18
4일차.  (0) 2020.06.17

1. 2byte 세숫자를 입력받고, 가장큰수, 가장작은수를 메모리에 저장하라

2. 가장큰값과 가장작읍값의 곱을 출력하라.

%include ""io64.inc"
section .text
global CMAIN
CMAIN:
    ;write your code here
    
    ;input
    GET_DEC 2, input_a
    GET_DEC 2, input_b
    GET_DEC 2, input_c

    ; input_a, input_b를 비교
    mov ax, [input_a]
    mov bx, [input_b]

    cmp ax, bx
    jg L_great_ax; ax>bx 가 참이면 이동
    
    ;ax<=bx 이면 실행 
    mov [max], bx
    mov [min], ax
    
    jmp L_max_next_step

L_great_ax:
    mov [max], ax
    mov [min], bx

;처음 비교 끝
L_max_next_step:;최종 최대값 구하기 max 와 c값 비교
    mov ax, [max]
    mov bx, [input_c]
    cmp ax, bx
    jg L_find_max_end; max > input_c 이미 맥스가 구해진 상태 엔드로 이동
    mov [max], bx
;max를 찾음
L_find_max_end:
    ;가장 작은수를 구하자
    mov ax, [min]
    mov bx, [input_c]

    cmp ax, bx
    jl L_find_min_end; min이 이미 제일 작음
    mov [min], bx

L_find_min_end:
    ;최소와 최대값의 곱을 출력해야함 2byte애들임
    mov edx, 0
    mov eax, 0

    mov ax, [max]
    mov bx, [min]

    mul bx ; dx:ax = ax * bx
    shl edx, 16 ;4칸 왼쪽으로(16진수)
    and eax, 0x0000ffff ; 뒤 네칸만 남기고 0으로 설정
    or eax,edx
    mov [total], eax

    ;출력
    PRINT_STRING str_max
    PRINT_DEC 2,max
    NEWLINE

    PRINT_STRING str_min
    PRINT_DEC 2,min
    NEWLINE

    PRINT_STRING str_mul_max_n_min
    PRINT_DEC 4, total
    NEWLINE

    xor rax, rax
    ret
section .bss
    input_a resw 1
    input_b resw 1
    input_c resw 1
    max resw 1
    min resw 1
    total resd 1
section .data
    str_max db 'max : ', 0x00
    str_min db 'min : ', 0x00
    str_mul_max_n_min db 'max*min = ', 0x00

 

 

. 사용자 입력으로 수를 입력받아 3의 배수인지 출력하라

문제에 범위가 적혀있지않아 배운부분으로 적당히 해봄

 

include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

GET_DEC 2, input_a

 

;피제수를 두개로 나누고....

mov eax, [input_a]

mov edx, eax

shr edx, 16; 앞 4개만 남기고...

and eax, 0x0000ffff ; 뒤 4개만 남기고...

 

mov bx, 3

div bx ; ax = quotient, dx = remainder

 

cmp dx, word 0

jne L_not_equal

PRINT_STRING str_equal

jmp L_end

L_not_equal:

PRINT_STRING str_not_equal

L_end:

xor rax, rax

ret

section .bss

input_a resw 1

 

section .data

str_equal db '배수이다.',0x00

str_not_equal db '아니다',0x00

 

 

dx:ax값을 ebx로 이동하는 알고리즘을 만들기, shift연산은 사용하지말고 메모리와 mov연산만으로 구현

. 못풀었음.;; 내일 조금 다시 해보다 안되면 질문좀 올려봐야할거같음 

 

'NASM' 카테고리의 다른 글

8일차.  (0) 2020.06.21
7일차.  (0) 2020.06.20
5일차.  (0) 2020.06.18
4일차.  (0) 2020.06.17
3일차.  (0) 2020.06.17

나누기 2바이트 이상

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov eax, 0x12345678 ;305419896

mov bx, 0x4567 ;17767

 

mov edx, eax

shr edx, 16

and eax, 0x0000ffff

div bx

mov [quotient], ax

mov [remainder], dx

 

PRINT_HEX 2, quotient

NEWLINE

PRINT_DEC 2, quotient

NEWLINE

PRINT_HEX 2, remainder

NEWLINE

PRINT_DEC 2, remainder

NEWLINE

 

xor rax, rax

ret

section .bss

quotient resw 1

remainder resw 1

 

TEST매크로 zf설정 관찰하기

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

mov rbp, rsp; for correct debugging

;write your code here

 

mov ax, 0x1234

and ax, 0x0000; zf설정됨 ax값도 변경됨

PRINT_HEX 2, ax

NEWLINE

 

add ax, 0x1234; zf가 설정된게 풀어짐

mov ax, 0x1234

test ax,0x0000; zf값은 설정되나 ax값은 변경안됨

PRINT_HEX 2, ax

NEWLINE

 

 

xor rax, rax

ret

 

 

 if문의 구현,  cmp와 jmp이용

je : 같다면 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax, 20

mov bx, 10

 

cmp ax,bx ;ax 와 bx를 비교연산을 할것이다.

je L_equal ; ax와bx가 같다면 L_equal 라벨로 이동 하라

mov cx, 0 ; 위 라인의 je가 실행이 안됐다면 실행됨, ax와bx가 다름

jmp L_equal_end ;무조건 L_eqaul_end로 이동 goto문인듯

 

L_equal:

mov cx, 100

 

L_equal_end:

PRINT_DEC 2,cx

NEWLINE

 

xor rax, rax

ret

 

 

위와 같은 기능을 하나 순서를 다르게한 소스

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax, 20

mov bx, 10

 

cmp ax,bx

je L_equal

jmp L_not_equal

L_equal:

mov cx, 100

jmp L_eqaul_end

L_not_equal:

mov cx, 0

L_eqaul_end:

PRINT_DEC 2, cx

 

xor rax, rax

ret

 

위와 같은 기능을 하나 또다른 소스 jne로 jne:같지 않다면

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax,20

mov bx,10

 

cmp ax,bx

jne L_not_equal

 

;ax bx 같다면

mov cx, 100

jmp L_not_equal_end

L_not_equal:

mov cx, 0

L_not_equal_end:

PRINT_HEX 2, cx

 

xor rax, rax

ret

 

'NASM' 카테고리의 다른 글

7일차.  (0) 2020.06.20
6일차.  (0) 2020.06.19
4일차.  (0) 2020.06.17
3일차.  (0) 2020.06.17
2일차  (0) 2020.06.15

3일차에 마지막에 했던 예제문제, 

그 소스는 버리고 그냥 처음부터 다시 쳤다.

아직도 거기서 뭐가 문제였는지 모르겠음.

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

mov rbp, rsp; for correct debugging

;write your code here

mov ax, 0

mov bx, 0

 

;input

GET_DEC 1, al

GET_DEC 1, bl

 

mov [input_a], al

mov [input_b], bl

 

PRINT_DEC 1, input_a

PRINT_STRING str_space

PRINT_DEC 1, input_b

NEWLINE

 

;add

add al,bl

mov [result_add], al

 

 

;sub

mov al, [input_a]

sub al,bl

mov [result_sub], al

 

 

 

;mul

mov ax, 0

mov al, [input_a]

mul bx

mov [result_mul], ax

 

 

;div

mov ax,0

mov bx,0

 

mov al, [input_a];ax에 넣어서 계싼하면 오류는 안뜨나 뒤에 가 작동안함... 왜그런지 모르겠다.

mov bl, [input_b]

 

div bl

mov [result_div_quotient], al

mov bl, ah

mov [result_div_remainder], bl

 

 

;print

PRINT_STRING str_add

PRINT_DEC 1, result_add

NEWLINE

PRINT_STRING str_sub

PRINT_DEC 1, result_sub

NEWLINE

PRINT_STRING str_mul

PRINT_DEC 2, result_mul

NEWLINE

PRINT_STRING str_div_quotient

PRINT_DEC 1, result_div_quotient

NEWLINE

PRINT_STRING str_div_remainder

PRINT_DEC 1, result_div_remainder

NEWLINE

 

xor rax, rax

ret

 

section .bss

input_a resb 1

input_b resb 1

 

result_add resb 1

result_sub resb 1

result_mul resw 1

result_div_quotient resb 1

result_div_remainder resb 1

section .data

str_space db ' ',0x00

str_add db 'add : ',0x00

str_sub db 'sub : ',0x00

str_mul db 'mul : ',0x00

str_div_quotient db 'div-quotient : ',0x00

str_div_remainder db 'div-remainder : ',0x00

 

 

div연산이 2일차인가에 했던 예제랑 좀 다름

al,ah = ax / para (al에 몫, ah에 나머지)

여서 ax에 피제수를 넣고 para에 제수를 넣었는데

이상하게 ax에 피제수를 넣고 돌리면 프로그램이 멈춘다.

al에 피제수를 넣고 돌리면 ok~

이유는 모르겠음

 

 

 

shift 연산

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax, 0x1234

 

PRINT_HEX 2, ax

NEWLINE

 

shl ax,4

 

PRINT_HEX 2, ax

NEWLINE

 

mov [a], word 0x1234

PRINT_HEX 2, a

NEWLINE

 

shr word [a], 4 ; 메모리 변수의 크기를 말해주지않으면 에러...

PRINT_HEX 2,a

NEWLINE

 

 

xor rax, rax

ret

 

section .bss

a resw 1

 

and, or, xor, not 연산

include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov al, [target_a];0xb6

mov bl, 0b01010101; 0x55

 

;and

and al,bl

PRINT_HEX 1,al

NEWLINE

 

;or

mov al,[target_a]

or al,bl

PRINT_HEX 1,al

NEWLINE

;xor

mov al, [target_a]

xor al,bl

PRINT_HEX 1, al

NEWLINE

 

;not

mov al, [target_a]

not al

PRINT_HEX 1, al

NEWLINE

 

xor rax, rax

ret

 

section .data

target_a db 0b10110110; 0xb6 0b는 이진수

 

 

 

 

2byte 곱연산

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

;mov edx, 0

;mov eax, 0

 

mov ax, 0x2710;10000(10)

mov bx, 0x1388;5000(10)

 

mul bx ; dx:ax = ax*bx

shl edx, 16; dx에 이미 상위값이 들어가있다. 들어가기전에 왜 edx를0 으로 초기화를 안해주는걸까.?

and eax, 0x0000ffff;edx와 마찬가지로 ax에 하위값이 들어가있다.

or eax,edx

 

mov [result], eax

PRINT_HEX 4,result

NEWLINE

PRINT_DEC 4,result

NEWLINE

 

 

xor rax, rax

ret

 

section .bss

result resd 1

 

 

슬슬 소스좀 정리해서  깃에 넣어놔야할것 같음

'NASM' 카테고리의 다른 글

6일차.  (0) 2020.06.19
5일차.  (0) 2020.06.18
3일차.  (0) 2020.06.17
2일차  (0) 2020.06.15
1일차.  (0) 2020.06.14

nasm 에서 입력받는 매크로 10진

GET_DEC 바이트수, 주소

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

GET_DEC 1, al

GET_DEC 2,a

 

PRINT_DEC 1,al

NEWLINE

PRINT_DEC 2, a

 

xor rax, rax

ret

 

 

section .bss

a resw 1

 

 

 

곱하기

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

PRINT_DEC 2, ax

NEWLINE

 

mov ax, 0

mov al, 2

mov bl, 4

 

PRINT_DEC 1, bx

NEWLINE

 

mul bx

 

PRINT_DEC 1, ax

NEWLINE

 

xor rax, rax

ret

 

 

나누기

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

 

;7/2

 

mov ax, 7

mov bl, 2

div bl

 

mov bl, ah ; ah == 나머지값

 

PRINT_DEC 1, al

NEWLINE

 

PRINT_DEC 1, bl

NEWLINE

 

xor rax, rax

ret

 

곱하고 나누고

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

mov rbp, rsp; for correct debugging

;

mov ax, 0

mov al, 2

mov bl, 3

mul bx

 

PRINT_DEC 1, ax

NEWLINE

 

mov ax, 7

mov bl, 2

div bl

mov bl, ah

 

PRINT_DEC 1, al

NEWLINE

PRINT_DEC 1, bl

NEWLINE

 

xor rax, rax

ret

 

 

 

연습문제

2개의 변수를 사용자로부터 1byte단위로 입력받아 메모리에 저장하고 더하고, 빼고 , 곱하고 나눈값을 메모리에 각각 개별적으로 저장후 출력하라.

안돌아감... 틀린답.

고치는건 4일차에하자

더보기

%include "io64.io"
section .text
global CMAIN
CMAIN:
    ;write your code here
    
    GET_DEC 1, al
    GET_DEC 1, bl
    
    mov [input_a], al
    mov [input_b], bl

    add al, bl
    mov [result_add], al
    PRINT_STRING msg_result_add
    PRINT_DEC 1,result_add
    NEWLINE
    
    mov al, [input_a]
    sub al, bl
    mov [result_sub], al
    PRINT_STRING msg_result_sub
    PRINT_DEC 1, result_sub
    NEWLINE
    
    mov ax, 0
    mov al, input_a
    mul bl
    mov [result_mul], ax
    PRINT_STRING msg_result_mul
    PRINT_DEC 2, result_mul
    NEWLINE
    
    mov ax, [input_a]
    div bl
    mov [result_div_quotient], al
    mov [result_div_remainder], ah
    PRINT_STRING msg_result_div
    PRINT_STRING msg_open_bracket
    PRINT_DEC 1, result_div_quotient
    PRINT_STRING msg_slash
    PRINT_DEC 1, result_div_remainder
    PRINT_STRING msg_close_bracket
    
     
    
    xor rax, rax
    ret
    
section .bss
input_a resb 1
input_b resb 1
result_add resb 1
result_sub resb 1
result_mul resw 1
result_div_quotient resb 1
result_div_remainder resb 1

section .data
msg_result_add db 'add : ',0x00
msg_result_sub db 'sub : ',0x00
msg_result_mul db 'mul : ',0x00
msg_result_div db 'div[quotient/remainder] : ',0x00
msg_open_bracket db '[',0x00
msg_close_bracket db ']',0x00
msg_slash db '/',0x00

 

'NASM' 카테고리의 다른 글

6일차.  (0) 2020.06.19
5일차.  (0) 2020.06.18
4일차.  (0) 2020.06.17
2일차  (0) 2020.06.15
1일차.  (0) 2020.06.14

1일차에서 설치한 우분투 20버전을 삭제했다.

책에서 저자가 사용한 버전인 18.04로 새로 설치.

 

sudo apt-get update

sudo apt-get -f install

sudo apt-get install nasm

sudo apt-get install gcc-multilib

sudo apt - fix-broken install

sudo apt-get install qt4-default

sudo dpkg -i sasm_3.9.0_amd64.deb



출처: https://wiwi-pe.tistory.com/63 [선생님 개발블로그가 하고싶었어요.]

 

1일차.

맥에서는 sasm 설치가 어렵다고해서 버추얼박스로 우분투설치해서 학습진행 20.04lts버전(현 최신 안정화버전) 으로 설치하였는데 도서에서는 18.0.4 버전으로 하고있다.... 별 생각없이 다운로드했�

wiwi-pe.tistory.com

 

1일차 부분에서 sudo apt --fix-borken install 부분만 변경해서 설치완료.

 

역시 qt4-default가 제대로 설치가 되야 sasm이 제대로 설치가 되는듯하다.

 

-설치까지의 터미널내용

더보기

To run a command as administrator (user "root"), use "sudo ".
See "man sudo_root" for details.

wi@wi-VirtualBox:~$ sudo apt-get update
[sudo] password for wi:
Get:1 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
Hit:2 http://kr.archive.ubuntu.com/ubuntu bionic InRelease
Get:3 http://kr.archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
Get:4 http://kr.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
Fetched 252 kB in 3s (77.9 kB/s)
Reading package lists... Done
wi@wi-VirtualBox:~$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 212 not upgraded.
wi@wi-VirtualBox:~$ sudo apt-get install nasm
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
nasm
0 upgraded, 1 newly installed, 0 to remove and 212 not upgraded.
Need to get 359 kB of archives.
After this operation, 2,831 kB of additional disk space will be used.
Get:1 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 nasm amd64 2.13.02-0.1 [359 kB]
Fetched 359 kB in 2s (217 kB/s)
Selecting previously unselected package nasm.
(Reading database ... 127064 files and directories currently installed.)
Preparing to unpack .../nasm_2.13.02-0.1_amd64.deb ...
Unpacking nasm (2.13.02-0.1) ...
Setting up nasm (2.13.02-0.1) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
wi@wi-VirtualBox:~$ sudo apt-get install gcc-multilib
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
cpp-7 gcc gcc-7 gcc-7-base gcc-7-multilib gcc-8-base lib32asan4
lib32atomic1 lib32cilkrts5 lib32gcc-7-dev lib32gcc1 lib32gomp1 lib32itm1
lib32mpx2 lib32quadmath0 lib32stdc++6 lib32ubsan0 libasan4 libatomic1
libc-dev-bin libc6-dev libc6-dev-i386 libc6-dev-x32 libc6-i386 libc6-x32
libcc1-0 libcilkrts5 libgcc-7-dev libgcc1 libgomp1 libitm1 liblsan0 libmpx2
libquadmath0 libstdc++6 libtsan0 libubsan0 libx32asan4 libx32atomic1
libx32cilkrts5 libx32gcc-7-dev libx32gcc1 libx32gomp1 libx32itm1
libx32quadmath0 libx32stdc++6 libx32ubsan0 linux-libc-dev manpages-dev
Suggested packages:
gcc-7-locales make autoconf automake libtool flex bison gcc-doc gcc-7-doc
libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan4-dbg
liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg libmpx2-dbg
libquadmath0-dbg glibc-doc
The following NEW packages will be installed:
gcc gcc-7 gcc-7-multilib gcc-multilib lib32asan4 lib32atomic1 lib32cilkrts5
lib32gcc-7-dev lib32gcc1 lib32gomp1 lib32itm1 lib32mpx2 lib32quadmath0
lib32stdc++6 lib32ubsan0 libasan4 libatomic1 libc-dev-bin libc6-dev
libc6-dev-i386 libc6-dev-x32 libc6-i386 libc6-x32 libcilkrts5 libgcc-7-dev
libitm1 liblsan0 libmpx2 libquadmath0 libtsan0 libubsan0 libx32asan4
libx32atomic1 libx32cilkrts5 libx32gcc-7-dev libx32gcc1 libx32gomp1
libx32itm1 libx32quadmath0 libx32stdc++6 libx32ubsan0 linux-libc-dev
manpages-dev
The following packages will be upgraded:
cpp-7 gcc-7-base gcc-8-base libcc1-0 libgcc1 libgomp1 libstdc++6
7 upgraded, 43 newly installed, 0 to remove and 205 not upgraded.
Need to get 34.9 MB/44.0 MB of archives.
After this operation, 151 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libitm1 amd64 8.4.0-1ubuntu1~18.04 [27.9 kB]
Get:2 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libatomic1 amd64 8.4.0-1ubuntu1~18.04 [9,192 B]
Get:3 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libasan4 amd64 7.5.0-3ubuntu1~18.04 [358 kB]
Get:4 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 liblsan0 amd64 8.4.0-1ubuntu1~18.04 [133 kB]
Get:5 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libtsan0 amd64 8.4.0-1ubuntu1~18.04 [288 kB]
Get:6 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libubsan0 amd64 7.5.0-3ubuntu1~18.04 [126 kB]
Get:7 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libcilkrts5 amd64 7.5.0-3ubuntu1~18.04 [42.5 kB]
Get:8 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libmpx2 amd64 8.4.0-1ubuntu1~18.04 [11.6 kB]
Get:9 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libquadmath0 amd64 8.4.0-1ubuntu1~18.04 [134 kB]
Get:10 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libgcc-7-dev amd64 7.5.0-3ubuntu1~18.04 [2,378 kB]
Get:11 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 gcc-7 amd64 7.5.0-3ubuntu1~18.04 [9,381 kB]
Get:12 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 gcc amd64 4:7.4.0-1ubuntu2.3 [5,184 B]
Get:13 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libc6-i386 amd64 2.27-3ubuntu1 [2,651 kB]
Get:14 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libc-dev-bin amd64 2.27-3ubuntu1 [71.8 kB]
Get:15 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 linux-libc-dev amd64 4.15.0-106.107 [991 kB]
Get:16 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libc6-dev amd64 2.27-3ubuntu1 [2,587 kB]
Get:17 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libc6-dev-i386 amd64 2.27-3ubuntu1 [1,815 kB]
Get:18 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libc6-x32 amd64 2.27-3ubuntu1 [2,848 kB]
Get:19 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libc6-dev-x32 amd64 2.27-3ubuntu1 [2,018 kB]
Get:20 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32gcc1 amd64 1:8.4.0-1ubuntu1~18.04 [48.1 kB]
Get:21 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32gcc1 amd64 1:8.4.0-1ubuntu1~18.04 [40.5 kB]
Get:22 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32gomp1 amd64 8.4.0-1ubuntu1~18.04 [83.7 kB]
Get:23 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32gomp1 amd64 8.4.0-1ubuntu1~18.04 [77.8 kB]
Get:24 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32itm1 amd64 8.4.0-1ubuntu1~18.04 [30.0 kB]
Get:25 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32itm1 amd64 8.4.0-1ubuntu1~18.04 [28.1 kB]
Get:26 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32atomic1 amd64 8.4.0-1ubuntu1~18.04 [8,664 B]
Get:27 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32atomic1 amd64 8.4.0-1ubuntu1~18.04 [9,188 B]
Get:28 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32asan4 amd64 7.5.0-3ubuntu1~18.04 [362 kB]
Get:29 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32asan4 amd64 7.5.0-3ubuntu1~18.04 [351 kB]
Get:30 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32stdc++6 amd64 8.4.0-1ubuntu1~18.04 [415 kB]
Get:31 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32ubsan0 amd64 7.5.0-3ubuntu1~18.04 [140 kB]
Get:32 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32stdc++6 amd64 8.4.0-1ubuntu1~18.04 [387 kB]
Get:33 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32ubsan0 amd64 7.5.0-3ubuntu1~18.04 [127 kB]
Get:34 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32cilkrts5 amd64 7.5.0-3ubuntu1~18.04 [47.2 kB]
Get:35 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32cilkrts5 amd64 7.5.0-3ubuntu1~18.04 [43.0 kB]
Get:36 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32mpx2 amd64 8.4.0-1ubuntu1~18.04 [12.9 kB]
Get:37 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32quadmath0 amd64 8.4.0-1ubuntu1~18.04 [208 kB]
Get:38 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32quadmath0 amd64 8.4.0-1ubuntu1~18.04 [135 kB]
Get:39 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 lib32gcc-7-dev amd64 7.5.0-3ubuntu1~18.04 [2,211 kB]
Get:40 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx32gcc-7-dev amd64 7.5.0-3ubuntu1~18.04 [1,999 kB]
Get:41 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 gcc-7-multilib amd64 7.5.0-3ubuntu1~18.04 [1,048 B]
Get:42 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 gcc-multilib amd64 4:7.4.0-1ubuntu2.3 [1,428 B]
Get:43 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 manpages-dev all 4.15-1 [2,217 kB]
Fetched 34.9 MB in 13s (2,632 kB/s)
Extracting templates from packages: 100%
(Reading database ... 127090 files and directories currently installed.)
Preparing to unpack .../libgomp1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libgomp1:amd64 (8.4.0-1ubuntu1~18.04) over (8.3.0-6ubuntu1~18.04.1) ...
Preparing to unpack .../gcc-8-base_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking gcc-8-base:amd64 (8.4.0-1ubuntu1~18.04) over (8.3.0-6ubuntu1~18.04.1) ...
Setting up gcc-8-base:amd64 (8.4.0-1ubuntu1~18.04) ...
(Reading database ... 127090 files and directories currently installed.)
Preparing to unpack .../libstdc++6_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libstdc++6:amd64 (8.4.0-1ubuntu1~18.04) over (8.3.0-6ubuntu1~18.04.1) ...
Setting up libstdc++6:amd64 (8.4.0-1ubuntu1~18.04) ...
(Reading database ... 127090 files and directories currently installed.)
Preparing to unpack .../libcc1-0_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libcc1-0:amd64 (8.4.0-1ubuntu1~18.04) over (8.3.0-6ubuntu1~18.04.1) ...
Preparing to unpack .../libgcc1_1%3a8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libgcc1:amd64 (1:8.4.0-1ubuntu1~18.04) over (1:8.3.0-6ubuntu1~18.04.1) ...
Setting up libgcc1:amd64 (1:8.4.0-1ubuntu1~18.04) ...
(Reading database ... 127090 files and directories currently installed.)
Preparing to unpack .../00-cpp-7_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking cpp-7 (7.5.0-3ubuntu1~18.04) over (7.4.0-1ubuntu1~18.04.1) ...
Preparing to unpack .../01-gcc-7-base_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking gcc-7-base:amd64 (7.5.0-3ubuntu1~18.04) over (7.4.0-1ubuntu1~18.04.1) ...
Selecting previously unselected package libitm1:amd64.
Preparing to unpack .../02-libitm1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libitm1:amd64 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libatomic1:amd64.
Preparing to unpack .../03-libatomic1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libatomic1:amd64 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libasan4:amd64.
Preparing to unpack .../04-libasan4_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libasan4:amd64 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package liblsan0:amd64.
Preparing to unpack .../05-liblsan0_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking liblsan0:amd64 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libtsan0:amd64.
Preparing to unpack .../06-libtsan0_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libtsan0:amd64 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libubsan0:amd64.
Preparing to unpack .../07-libubsan0_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libubsan0:amd64 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package libcilkrts5:amd64.
Preparing to unpack .../08-libcilkrts5_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libcilkrts5:amd64 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package libmpx2:amd64.
Preparing to unpack .../09-libmpx2_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libmpx2:amd64 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libquadmath0:amd64.
Preparing to unpack .../10-libquadmath0_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libquadmath0:amd64 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libgcc-7-dev:amd64.
Preparing to unpack .../11-libgcc-7-dev_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libgcc-7-dev:amd64 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package gcc-7.
Preparing to unpack .../12-gcc-7_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking gcc-7 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package gcc.
Preparing to unpack .../13-gcc_4%3a7.4.0-1ubuntu2.3_amd64.deb ...
Unpacking gcc (4:7.4.0-1ubuntu2.3) ...
Selecting previously unselected package libc6-i386.
Preparing to unpack .../14-libc6-i386_2.27-3ubuntu1_amd64.deb ...
Unpacking libc6-i386 (2.27-3ubuntu1) ...
Selecting previously unselected package libc-dev-bin.
Preparing to unpack .../15-libc-dev-bin_2.27-3ubuntu1_amd64.deb ...
Unpacking libc-dev-bin (2.27-3ubuntu1) ...
Selecting previously unselected package linux-libc-dev:amd64.
Preparing to unpack .../16-linux-libc-dev_4.15.0-106.107_amd64.deb ...
Unpacking linux-libc-dev:amd64 (4.15.0-106.107) ...
Selecting previously unselected package libc6-dev:amd64.
Preparing to unpack .../17-libc6-dev_2.27-3ubuntu1_amd64.deb ...
Unpacking libc6-dev:amd64 (2.27-3ubuntu1) ...
Selecting previously unselected package libc6-dev-i386.
Preparing to unpack .../18-libc6-dev-i386_2.27-3ubuntu1_amd64.deb ...
Unpacking libc6-dev-i386 (2.27-3ubuntu1) ...
Selecting previously unselected package libc6-x32.
Preparing to unpack .../19-libc6-x32_2.27-3ubuntu1_amd64.deb ...
Unpacking libc6-x32 (2.27-3ubuntu1) ...
Selecting previously unselected package libc6-dev-x32.
Preparing to unpack .../20-libc6-dev-x32_2.27-3ubuntu1_amd64.deb ...
Unpacking libc6-dev-x32 (2.27-3ubuntu1) ...
Selecting previously unselected package lib32gcc1.
Preparing to unpack .../21-lib32gcc1_1%3a8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking lib32gcc1 (1:8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libx32gcc1.
Preparing to unpack .../22-libx32gcc1_1%3a8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libx32gcc1 (1:8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package lib32gomp1.
Preparing to unpack .../23-lib32gomp1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking lib32gomp1 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libx32gomp1.
Preparing to unpack .../24-libx32gomp1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libx32gomp1 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package lib32itm1.
Preparing to unpack .../25-lib32itm1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking lib32itm1 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libx32itm1.
Preparing to unpack .../26-libx32itm1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libx32itm1 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package lib32atomic1.
Preparing to unpack .../27-lib32atomic1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking lib32atomic1 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libx32atomic1.
Preparing to unpack .../28-libx32atomic1_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libx32atomic1 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package lib32asan4.
Preparing to unpack .../29-lib32asan4_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking lib32asan4 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package libx32asan4.
Preparing to unpack .../30-libx32asan4_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libx32asan4 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package lib32stdc++6.
Preparing to unpack .../31-lib32stdc++6_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking lib32stdc++6 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package lib32ubsan0.
Preparing to unpack .../32-lib32ubsan0_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking lib32ubsan0 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package libx32stdc++6.
Preparing to unpack .../33-libx32stdc++6_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libx32stdc++6 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libx32ubsan0.
Preparing to unpack .../34-libx32ubsan0_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libx32ubsan0 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package lib32cilkrts5.
Preparing to unpack .../35-lib32cilkrts5_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking lib32cilkrts5 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package libx32cilkrts5.
Preparing to unpack .../36-libx32cilkrts5_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libx32cilkrts5 (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package lib32mpx2.
Preparing to unpack .../37-lib32mpx2_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking lib32mpx2 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package lib32quadmath0.
Preparing to unpack .../38-lib32quadmath0_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking lib32quadmath0 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package libx32quadmath0.
Preparing to unpack .../39-libx32quadmath0_8.4.0-1ubuntu1~18.04_amd64.deb ...
Unpacking libx32quadmath0 (8.4.0-1ubuntu1~18.04) ...
Selecting previously unselected package lib32gcc-7-dev.
Preparing to unpack .../40-lib32gcc-7-dev_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking lib32gcc-7-dev (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package libx32gcc-7-dev.
Preparing to unpack .../41-libx32gcc-7-dev_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking libx32gcc-7-dev (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package gcc-7-multilib.
Preparing to unpack .../42-gcc-7-multilib_7.5.0-3ubuntu1~18.04_amd64.deb ...
Unpacking gcc-7-multilib (7.5.0-3ubuntu1~18.04) ...
Selecting previously unselected package gcc-multilib.
Preparing to unpack .../43-gcc-multilib_4%3a7.4.0-1ubuntu2.3_amd64.deb ...
Unpacking gcc-multilib (4:7.4.0-1ubuntu2.3) ...
Selecting previously unselected package manpages-dev.
Preparing to unpack .../44-manpages-dev_4.15-1_all.deb ...
Unpacking manpages-dev (4.15-1) ...
Setting up libquadmath0:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up libc6-x32 (2.27-3ubuntu1) ...
Setting up libgomp1:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up libatomic1:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up libcc1-0:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up libx32gcc1 (1:8.4.0-1ubuntu1~18.04) ...
Setting up libtsan0:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up linux-libc-dev:amd64 (4.15.0-106.107) ...
Setting up libc6-i386 (2.27-3ubuntu1) ...
Setting up libx32stdc++6 (8.4.0-1ubuntu1~18.04) ...
Setting up lib32atomic1 (8.4.0-1ubuntu1~18.04) ...
Setting up libx32atomic1 (8.4.0-1ubuntu1~18.04) ...
Setting up liblsan0:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up gcc-7-base:amd64 (7.5.0-3ubuntu1~18.04) ...
Setting up libx32gomp1 (8.4.0-1ubuntu1~18.04) ...
Setting up libmpx2:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up libx32itm1 (8.4.0-1ubuntu1~18.04) ...
Setting up libc-dev-bin (2.27-3ubuntu1) ...
Setting up lib32quadmath0 (8.4.0-1ubuntu1~18.04) ...
Setting up manpages-dev (4.15-1) ...
Setting up libc6-dev:amd64 (2.27-3ubuntu1) ...
Setting up lib32itm1 (8.4.0-1ubuntu1~18.04) ...
Setting up libitm1:amd64 (8.4.0-1ubuntu1~18.04) ...
Setting up libx32quadmath0 (8.4.0-1ubuntu1~18.04) ...
Setting up lib32gcc1 (1:8.4.0-1ubuntu1~18.04) ...
Setting up libx32asan4 (7.5.0-3ubuntu1~18.04) ...
Setting up libx32cilkrts5 (7.5.0-3ubuntu1~18.04) ...
Setting up libasan4:amd64 (7.5.0-3ubuntu1~18.04) ...
Setting up lib32gomp1 (8.4.0-1ubuntu1~18.04) ...
Setting up libx32ubsan0 (7.5.0-3ubuntu1~18.04) ...
Setting up libcilkrts5:amd64 (7.5.0-3ubuntu1~18.04) ...
Setting up libubsan0:amd64 (7.5.0-3ubuntu1~18.04) ...
Setting up lib32asan4 (7.5.0-3ubuntu1~18.04) ...
Setting up lib32mpx2 (8.4.0-1ubuntu1~18.04) ...
Setting up libgcc-7-dev:amd64 (7.5.0-3ubuntu1~18.04) ...
Setting up cpp-7 (7.5.0-3ubuntu1~18.04) ...
Setting up lib32stdc++6 (8.4.0-1ubuntu1~18.04) ...
Setting up lib32ubsan0 (7.5.0-3ubuntu1~18.04) ...
Setting up lib32cilkrts5 (7.5.0-3ubuntu1~18.04) ...
Setting up libc6-dev-i386 (2.27-3ubuntu1) ...
Setting up libc6-dev-x32 (2.27-3ubuntu1) ...
Setting up gcc-7 (7.5.0-3ubuntu1~18.04) ...
Setting up gcc (4:7.4.0-1ubuntu2.3) ...
Setting up libx32gcc-7-dev (7.5.0-3ubuntu1~18.04) ...
Setting up lib32gcc-7-dev (7.5.0-3ubuntu1~18.04) ...
Setting up gcc-7-multilib (7.5.0-3ubuntu1~18.04) ...
Setting up gcc-multilib (4:7.4.0-1ubuntu2.3) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
wi@wi-VirtualBox:~$ sudo apt --fix-broken install
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 205 not upgraded.
wi@wi-VirtualBox:~$ sudo apt-get install qt4-default
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libdrm-amdgpu1 libdrm-common libdrm-dev libdrm-intel1 libdrm-nouveau2
libdrm-radeon1 libdrm2 libgl1-mesa-dev libgles1 libglu1-mesa-dev
libglvnd-core-dev libglvnd-dev libmng2 libmysqlclient20 libopengl0
libpthread-stubs0-dev libqt4-dbus libqt4-declarative libqt4-designer
libqt4-dev libqt4-dev-bin libqt4-help libqt4-network libqt4-opengl
libqt4-opengl-dev libqt4-qt3support libqt4-script libqt4-scripttools
libqt4-sql libqt4-sql-mysql libqt4-svg libqt4-test libqt4-xml
libqt4-xmlpatterns libqtcore4 libqtdbus4 libqtgui4 libx11-dev libx11-doc
libx11-xcb-dev libxau-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev
libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-shape0-dev
libxcb-sync-dev libxcb-xfixes0-dev libxcb1-dev libxdamage-dev libxdmcp-dev
libxext-dev libxfixes-dev libxshmfence-dev libxxf86vm-dev mesa-common-dev
mysql-common qdbus qt-at-spi qt4-linguist-tools qt4-qmake qtchooser
qtcore4-l10n x11proto-core-dev x11proto-damage-dev x11proto-dev
x11proto-fixes-dev x11proto-xext-dev x11proto-xf86vidmode-dev
xorg-sgml-doctools xtrans-dev
Suggested packages:
libqt4-declarative-folderlistmodel libqt4-declarative-gestures
libqt4-declarative-particles libqt4-declarative-shaders qt4-qmlviewer
firebird-dev libmysqlclient-dev libpq-dev libsqlite0-dev libsqlite3-dev
qt4-dev-tools qt4-doc unixodbc-dev libicu55 qt4-qtconfig libxcb-doc
libxext-doc
The following NEW packages will be installed:
libdrm-dev libgl1-mesa-dev libgles1 libglu1-mesa-dev libglvnd-core-dev
libglvnd-dev libmng2 libmysqlclient20 libopengl0 libpthread-stubs0-dev
libqt4-dbus libqt4-declarative libqt4-designer libqt4-dev libqt4-dev-bin
libqt4-help libqt4-network libqt4-opengl libqt4-opengl-dev
libqt4-qt3support libqt4-script libqt4-scripttools libqt4-sql
libqt4-sql-mysql libqt4-svg libqt4-test libqt4-xml libqt4-xmlpatterns
libqtcore4 libqtdbus4 libqtgui4 libx11-dev libx11-doc libx11-xcb-dev
libxau-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev
libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-shape0-dev
libxcb-sync-dev libxcb-xfixes0-dev libxcb1-dev libxdamage-dev libxdmcp-dev
libxext-dev libxfixes-dev libxshmfence-dev libxxf86vm-dev mesa-common-dev
mysql-common qdbus qt-at-spi qt4-default qt4-linguist-tools qt4-qmake
qtchooser qtcore4-l10n x11proto-core-dev x11proto-damage-dev x11proto-dev
x11proto-fixes-dev x11proto-xext-dev x11proto-xf86vidmode-dev
xorg-sgml-doctools xtrans-dev
The following packages will be upgraded:
libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1
libdrm2
6 upgraded, 68 newly installed, 0 to remove and 199 not upgraded.
Need to get 26.1 MB/26.3 MB of archives.
After this operation, 116 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libmng2 amd64 2.0.2-0ubuntu3 [169 kB]
Get:2 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libdrm-dev amd64 2.4.99-1ubuntu1~18.04.2 [125 kB]
Get:3 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libgles1 amd64 1.0.0-2ubuntu2.3 [11.2 kB]
Get:4 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 xorg-sgml-doctools all 1:1.11-1 [12.9 kB]
Get:5 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 x11proto-dev all 2018.4-4 [251 kB]
Get:6 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 x11proto-core-dev all 2018.4-4 [2,620 B]
Get:7 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libxau-dev amd64 1:1.0.8-1 [11.1 kB]
Get:8 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libxdmcp-dev amd64 1:1.1.2-3 [25.1 kB]
Get:9 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 xtrans-dev all 1.3.5-1 [70.5 kB]
Get:10 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libpthread-stubs0-dev amd64 0.3-4 [4,068 B]
Get:11 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb1-dev amd64 1.13-2~ubuntu18.04 [80.0 kB]
Get:12 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx11-dev amd64 2:1.6.4-3ubuntu0.2 [640 kB]
Get:13 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 mesa-common-dev amd64 19.2.8-0ubuntu0~18.04.3 [651 kB]
Get:14 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libglvnd-core-dev amd64 1.0.0-2ubuntu2.3 [12.8 kB]
Get:15 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libopengl0 amd64 1.0.0-2ubuntu2.3 [31.3 kB]
Get:16 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libglvnd-dev amd64 1.0.0-2ubuntu2.3 [3,416 B]
Get:17 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx11-xcb-dev amd64 2:1.6.4-3ubuntu0.2 [9,756 B]
Get:18 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-dri3-dev amd64 1.13-2~ubuntu18.04 [7,384 B]
Get:19 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-render0-dev amd64 1.13-2~ubuntu18.04 [18.4 kB]
Get:20 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-randr0-dev amd64 1.13-2~ubuntu18.04 [20.4 kB]
Get:21 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-shape0-dev amd64 1.13-2~ubuntu18.04 [7,144 B]
Get:22 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-xfixes0-dev amd64 1.13-2~ubuntu18.04 [11.7 kB]
Get:23 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-sync-dev amd64 1.13-2~ubuntu18.04 [10.6 kB]
Get:24 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-present-dev amd64 1.13-2~ubuntu18.04 [6,972 B]
Get:25 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libxshmfence-dev amd64 1.3-1 [3,692 B]
Get:26 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-dri2-0-dev amd64 1.13-2~ubuntu18.04 [8,472 B]
Get:27 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-glx0-dev amd64 1.13-2~ubuntu18.04 [27.9 kB]
Get:28 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 x11proto-fixes-dev all 1:2018.4-4 [2,620 B]
Get:29 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libxfixes-dev amd64 1:5.0.3-1 [11.0 kB]
Get:30 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 x11proto-damage-dev all 1:2018.4-4 [2,620 B]
Get:31 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libxdamage-dev amd64 1:1.1.4-3 [5,028 B]
Get:32 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 x11proto-xext-dev all 2018.4-4 [2,620 B]
Get:33 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libxext-dev amd64 2:1.3.3-1 [82.1 kB]
Get:34 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 x11proto-xf86vidmode-dev all 2018.4-4 [2,632 B]
Get:35 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libxxf86vm-dev amd64 1:1.1.4-1 [13.3 kB]
Get:36 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libgl1-mesa-dev amd64 19.2.8-0ubuntu0~18.04.3 [6,180 B]
Get:37 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 libglu1-mesa-dev amd64 9.0.0-2.1build1 [206 kB]
Get:38 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 mysql-common all 5.8+1.0.4 [7,308 B]
Get:39 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libmysqlclient20 amd64 5.7.30-0ubuntu0.18.04.1 [690 kB]
Get:40 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 qtcore4-l10n all 4:4.8.7+dfsg-7ubuntu1 [617 kB]
Get:41 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqtcore4 amd64 4:4.8.7+dfsg-7ubuntu1 [1,552 kB]
Get:42 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-xml amd64 4:4.8.7+dfsg-7ubuntu1 [96.1 kB]
Get:43 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqtdbus4 amd64 4:4.8.7+dfsg-7ubuntu1 [186 kB]
Get:44 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 qtchooser amd64 64-ga1b6736-5 [24.1 kB]
Get:45 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 qdbus amd64 4:4.8.7+dfsg-7ubuntu1 [30.0 kB]
Get:46 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-dbus amd64 4:4.8.7+dfsg-7ubuntu1 [6,440 B]
Get:47 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-network amd64 4:4.8.7+dfsg-7ubuntu1 [562 kB]
Get:48 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-script amd64 4:4.8.7+dfsg-7ubuntu1 [815 kB]
Get:49 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-sql amd64 4:4.8.7+dfsg-7ubuntu1 [98.5 kB]
Get:50 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-xmlpatterns amd64 4:4.8.7+dfsg-7ubuntu1 [1,091 kB]
Get:51 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqtgui4 amd64 4:4.8.7+dfsg-7ubuntu1 [4,115 kB]
Get:52 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-declarative amd64 4:4.8.7+dfsg-7ubuntu1 [1,089 kB]
Get:53 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-designer amd64 4:4.8.7+dfsg-7ubuntu1 [3,629 kB]
Get:54 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-qt3support amd64 4:4.8.7+dfsg-7ubuntu1 [1,049 kB]
Get:55 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-dev-bin amd64 4:4.8.7+dfsg-7ubuntu1 [1,706 kB]
Get:56 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-help amd64 4:4.8.7+dfsg-7ubuntu1 [207 kB]
Get:57 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-scripttools amd64 4:4.8.7+dfsg-7ubuntu1 [225 kB]
Get:58 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-svg amd64 4:4.8.7+dfsg-7ubuntu1 [138 kB]
Get:59 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-test amd64 4:4.8.7+dfsg-7ubuntu1 [61.2 kB]
Get:60 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 qt4-linguist-tools amd64 4:4.8.7+dfsg-7ubuntu1 [879 kB]
Get:61 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 qt4-qmake amd64 4:4.8.7+dfsg-7ubuntu1 [1,366 kB]
Get:62 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-dev amd64 4:4.8.7+dfsg-7ubuntu1 [853 kB]
Get:63 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-opengl amd64 4:4.8.7+dfsg-7ubuntu1 [301 kB]
Get:64 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-opengl-dev amd64 4:4.8.7+dfsg-7ubuntu1 [22.8 kB]
Get:65 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 libqt4-sql-mysql amd64 4:4.8.7+dfsg-7ubuntu1 [30.5 kB]
Get:66 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libx11-doc all 2:1.6.4-3ubuntu0.2 [2,065 kB]
Get:67 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 qt-at-spi amd64 0.4.0-8 [58.6 kB]
Get:68 http://kr.archive.ubuntu.com/ubuntu bionic/universe amd64 qt4-default amd64 4:4.8.7+dfsg-7ubuntu1 [6,544 B]
Fetched 26.1 MB in 12s (2,244 kB/s)
Extracting templates from packages: 100%
Selecting previously unselected package libmng2:amd64.
(Reading database ... 131917 files and directories currently installed.)
Preparing to unpack .../00-libmng2_2.0.2-0ubuntu3_amd64.deb ...
Unpacking libmng2:amd64 (2.0.2-0ubuntu3) ...
Preparing to unpack .../01-libdrm-common_2.4.99-1ubuntu1~18.04.2_all.deb ...
Unpacking libdrm-common (2.4.99-1ubuntu1~18.04.2) over (2.4.99-1ubuntu1~18.04.1) ...
Preparing to unpack .../02-libdrm2_2.4.99-1ubuntu1~18.04.2_amd64.deb ...
Unpacking libdrm2:amd64 (2.4.99-1ubuntu1~18.04.2) over (2.4.99-1ubuntu1~18.04.1) ...
Preparing to unpack .../03-libdrm-amdgpu1_2.4.99-1ubuntu1~18.04.2_amd64.deb ...
Unpacking libdrm-amdgpu1:amd64 (2.4.99-1ubuntu1~18.04.2) over (2.4.99-1ubuntu1~18.04.1) ...
Preparing to unpack .../04-libdrm-intel1_2.4.99-1ubuntu1~18.04.2_amd64.deb ...
Unpacking libdrm-intel1:amd64 (2.4.99-1ubuntu1~18.04.2) over (2.4.99-1ubuntu1~18.04.1) ...
Preparing to unpack .../05-libdrm-radeon1_2.4.99-1ubuntu1~18.04.2_amd64.deb ...
Unpacking libdrm-radeon1:amd64 (2.4.99-1ubuntu1~18.04.2) over (2.4.99-1ubuntu1~18.04.1) ...
Preparing to unpack .../06-libdrm-nouveau2_2.4.99-1ubuntu1~18.04.2_amd64.deb ...
Unpacking libdrm-nouveau2:amd64 (2.4.99-1ubuntu1~18.04.2) over (2.4.99-1ubuntu1~18.04.1) ...
Selecting previously unselected package libdrm-dev:amd64.
Preparing to unpack .../07-libdrm-dev_2.4.99-1ubuntu1~18.04.2_amd64.deb ...
Unpacking libdrm-dev:amd64 (2.4.99-1ubuntu1~18.04.2) ...
Selecting previously unselected package libgles1:amd64.
Preparing to unpack .../08-libgles1_1.0.0-2ubuntu2.3_amd64.deb ...
Unpacking libgles1:amd64 (1.0.0-2ubuntu2.3) ...
Selecting previously unselected package xorg-sgml-doctools.
Preparing to unpack .../09-xorg-sgml-doctools_1%3a1.11-1_all.deb ...
Unpacking xorg-sgml-doctools (1:1.11-1) ...
Selecting previously unselected package x11proto-dev.
Preparing to unpack .../10-x11proto-dev_2018.4-4_all.deb ...
Unpacking x11proto-dev (2018.4-4) ...
Selecting previously unselected package x11proto-core-dev.
Preparing to unpack .../11-x11proto-core-dev_2018.4-4_all.deb ...
Unpacking x11proto-core-dev (2018.4-4) ...
Selecting previously unselected package libxau-dev:amd64.
Preparing to unpack .../12-libxau-dev_1%3a1.0.8-1_amd64.deb ...
Unpacking libxau-dev:amd64 (1:1.0.8-1) ...
Selecting previously unselected package libxdmcp-dev:amd64.
Preparing to unpack .../13-libxdmcp-dev_1%3a1.1.2-3_amd64.deb ...
Unpacking libxdmcp-dev:amd64 (1:1.1.2-3) ...
Selecting previously unselected package xtrans-dev.
Preparing to unpack .../14-xtrans-dev_1.3.5-1_all.deb ...
Unpacking xtrans-dev (1.3.5-1) ...
Selecting previously unselected package libpthread-stubs0-dev:amd64.
Preparing to unpack .../15-libpthread-stubs0-dev_0.3-4_amd64.deb ...
Unpacking libpthread-stubs0-dev:amd64 (0.3-4) ...
Selecting previously unselected package libxcb1-dev:amd64.
Preparing to unpack .../16-libxcb1-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb1-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libx11-dev:amd64.
Preparing to unpack .../17-libx11-dev_2%3a1.6.4-3ubuntu0.2_amd64.deb ...
Unpacking libx11-dev:amd64 (2:1.6.4-3ubuntu0.2) ...
Selecting previously unselected package mesa-common-dev:amd64.
Preparing to unpack .../18-mesa-common-dev_19.2.8-0ubuntu0~18.04.3_amd64.deb ...
Unpacking mesa-common-dev:amd64 (19.2.8-0ubuntu0~18.04.3) ...
Selecting previously unselected package libglvnd-core-dev:amd64.
Preparing to unpack .../19-libglvnd-core-dev_1.0.0-2ubuntu2.3_amd64.deb ...
Unpacking libglvnd-core-dev:amd64 (1.0.0-2ubuntu2.3) ...
Selecting previously unselected package libopengl0:amd64.
Preparing to unpack .../20-libopengl0_1.0.0-2ubuntu2.3_amd64.deb ...
Unpacking libopengl0:amd64 (1.0.0-2ubuntu2.3) ...
Selecting previously unselected package libglvnd-dev:amd64.
Preparing to unpack .../21-libglvnd-dev_1.0.0-2ubuntu2.3_amd64.deb ...
Unpacking libglvnd-dev:amd64 (1.0.0-2ubuntu2.3) ...
Selecting previously unselected package libx11-xcb-dev:amd64.
Preparing to unpack .../22-libx11-xcb-dev_2%3a1.6.4-3ubuntu0.2_amd64.deb ...
Unpacking libx11-xcb-dev:amd64 (2:1.6.4-3ubuntu0.2) ...
Selecting previously unselected package libxcb-dri3-dev:amd64.
Preparing to unpack .../23-libxcb-dri3-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-dri3-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxcb-render0-dev:amd64.
Preparing to unpack .../24-libxcb-render0-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-render0-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxcb-randr0-dev:amd64.
Preparing to unpack .../25-libxcb-randr0-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-randr0-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxcb-shape0-dev:amd64.
Preparing to unpack .../26-libxcb-shape0-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-shape0-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxcb-xfixes0-dev:amd64.
Preparing to unpack .../27-libxcb-xfixes0-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-xfixes0-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxcb-sync-dev:amd64.
Preparing to unpack .../28-libxcb-sync-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-sync-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxcb-present-dev:amd64.
Preparing to unpack .../29-libxcb-present-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-present-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxshmfence-dev:amd64.
Preparing to unpack .../30-libxshmfence-dev_1.3-1_amd64.deb ...
Unpacking libxshmfence-dev:amd64 (1.3-1) ...
Selecting previously unselected package libxcb-dri2-0-dev:amd64.
Preparing to unpack .../31-libxcb-dri2-0-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-dri2-0-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package libxcb-glx0-dev:amd64.
Preparing to unpack .../32-libxcb-glx0-dev_1.13-2~ubuntu18.04_amd64.deb ...
Unpacking libxcb-glx0-dev:amd64 (1.13-2~ubuntu18.04) ...
Selecting previously unselected package x11proto-fixes-dev.
Preparing to unpack .../33-x11proto-fixes-dev_1%3a2018.4-4_all.deb ...
Unpacking x11proto-fixes-dev (1:2018.4-4) ...
Selecting previously unselected package libxfixes-dev:amd64.
Preparing to unpack .../34-libxfixes-dev_1%3a5.0.3-1_amd64.deb ...
Unpacking libxfixes-dev:amd64 (1:5.0.3-1) ...
Selecting previously unselected package x11proto-damage-dev.
Preparing to unpack .../35-x11proto-damage-dev_1%3a2018.4-4_all.deb ...
Unpacking x11proto-damage-dev (1:2018.4-4) ...
Selecting previously unselected package libxdamage-dev:amd64.
Preparing to unpack .../36-libxdamage-dev_1%3a1.1.4-3_amd64.deb ...
Unpacking libxdamage-dev:amd64 (1:1.1.4-3) ...
Selecting previously unselected package x11proto-xext-dev.
Preparing to unpack .../37-x11proto-xext-dev_2018.4-4_all.deb ...
Unpacking x11proto-xext-dev (2018.4-4) ...
Selecting previously unselected package libxext-dev:amd64.
Preparing to unpack .../38-libxext-dev_2%3a1.3.3-1_amd64.deb ...
Unpacking libxext-dev:amd64 (2:1.3.3-1) ...
Selecting previously unselected package x11proto-xf86vidmode-dev.
Preparing to unpack .../39-x11proto-xf86vidmode-dev_2018.4-4_all.deb ...
Unpacking x11proto-xf86vidmode-dev (2018.4-4) ...
Selecting previously unselected package libxxf86vm-dev:amd64.
Preparing to unpack .../40-libxxf86vm-dev_1%3a1.1.4-1_amd64.deb ...
Unpacking libxxf86vm-dev:amd64 (1:1.1.4-1) ...
Selecting previously unselected package libgl1-mesa-dev:amd64.
Preparing to unpack .../41-libgl1-mesa-dev_19.2.8-0ubuntu0~18.04.3_amd64.deb ...
Unpacking libgl1-mesa-dev:amd64 (19.2.8-0ubuntu0~18.04.3) ...
Selecting previously unselected package libglu1-mesa-dev:amd64.
Preparing to unpack .../42-libglu1-mesa-dev_9.0.0-2.1build1_amd64.deb ...
Unpacking libglu1-mesa-dev:amd64 (9.0.0-2.1build1) ...
Selecting previously unselected package mysql-common.
Preparing to unpack .../43-mysql-common_5.8+1.0.4_all.deb ...
Unpacking mysql-common (5.8+1.0.4) ...
Selecting previously unselected package libmysqlclient20:amd64.
Preparing to unpack .../44-libmysqlclient20_5.7.30-0ubuntu0.18.04.1_amd64.deb ...
Unpacking libmysqlclient20:amd64 (5.7.30-0ubuntu0.18.04.1) ...
Selecting previously unselected package qtcore4-l10n.
Preparing to unpack .../45-qtcore4-l10n_4%3a4.8.7+dfsg-7ubuntu1_all.deb ...
Unpacking qtcore4-l10n (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqtcore4:amd64.
Preparing to unpack .../46-libqtcore4_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqtcore4:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-xml:amd64.
Preparing to unpack .../47-libqt4-xml_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-xml:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqtdbus4:amd64.
Preparing to unpack .../48-libqtdbus4_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqtdbus4:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package qtchooser.
Preparing to unpack .../49-qtchooser_64-ga1b6736-5_amd64.deb ...
Unpacking qtchooser (64-ga1b6736-5) ...
Selecting previously unselected package qdbus.
Preparing to unpack .../50-qdbus_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking qdbus (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-dbus:amd64.
Preparing to unpack .../51-libqt4-dbus_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-dbus:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-network:amd64.
Preparing to unpack .../52-libqt4-network_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-network:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-script:amd64.
Preparing to unpack .../53-libqt4-script_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-script:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-sql:amd64.
Preparing to unpack .../54-libqt4-sql_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-sql:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-xmlpatterns:amd64.
Preparing to unpack .../55-libqt4-xmlpatterns_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-xmlpatterns:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqtgui4:amd64.
Preparing to unpack .../56-libqtgui4_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqtgui4:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-declarative:amd64.
Preparing to unpack .../57-libqt4-declarative_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-declarative:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-designer:amd64.
Preparing to unpack .../58-libqt4-designer_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-designer:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-qt3support:amd64.
Preparing to unpack .../59-libqt4-qt3support_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-qt3support:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-dev-bin.
Preparing to unpack .../60-libqt4-dev-bin_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-dev-bin (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-help:amd64.
Preparing to unpack .../61-libqt4-help_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-help:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-scripttools:amd64.
Preparing to unpack .../62-libqt4-scripttools_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-scripttools:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-svg:amd64.
Preparing to unpack .../63-libqt4-svg_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-svg:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-test:amd64.
Preparing to unpack .../64-libqt4-test_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-test:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package qt4-linguist-tools.
Preparing to unpack .../65-qt4-linguist-tools_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking qt4-linguist-tools (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package qt4-qmake.
Preparing to unpack .../66-qt4-qmake_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking qt4-qmake (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-dev.
Preparing to unpack .../67-libqt4-dev_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-dev (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-opengl:amd64.
Preparing to unpack .../68-libqt4-opengl_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-opengl:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-opengl-dev.
Preparing to unpack .../69-libqt4-opengl-dev_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-opengl-dev (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libqt4-sql-mysql:amd64.
Preparing to unpack .../70-libqt4-sql-mysql_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking libqt4-sql-mysql:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Selecting previously unselected package libx11-doc.
Preparing to unpack .../71-libx11-doc_2%3a1.6.4-3ubuntu0.2_all.deb ...
Unpacking libx11-doc (2:1.6.4-3ubuntu0.2) ...
Selecting previously unselected package qt-at-spi:amd64.
Preparing to unpack .../72-qt-at-spi_0.4.0-8_amd64.deb ...
Unpacking qt-at-spi:amd64 (0.4.0-8) ...
Selecting previously unselected package qt4-default.
Preparing to unpack .../73-qt4-default_4%3a4.8.7+dfsg-7ubuntu1_amd64.deb ...
Unpacking qt4-default (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libopengl0:amd64 (1.0.0-2ubuntu2.3) ...
Setting up libgles1:amd64 (1.0.0-2ubuntu2.3) ...
Setting up libxshmfence-dev:amd64 (1.3-1) ...
Setting up libpthread-stubs0-dev:amd64 (0.3-4) ...
Setting up qtcore4-l10n (4:4.8.7+dfsg-7ubuntu1) ...
Setting up mysql-common (5.8+1.0.4) ...
update-alternatives: using /etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Setting up xorg-sgml-doctools (1:1.11-1) ...
Setting up qtchooser (64-ga1b6736-5) ...
Setting up libmng2:amd64 (2.0.2-0ubuntu3) ...
Setting up x11proto-dev (2018.4-4) ...
Setting up libdrm-common (2.4.99-1ubuntu1~18.04.2) ...
Setting up x11proto-damage-dev (1:2018.4-4) ...
Setting up xtrans-dev (1.3.5-1) ...
Setting up x11proto-xext-dev (2018.4-4) ...
Setting up libxdmcp-dev:amd64 (1:1.1.2-3) ...
Setting up libqtcore4:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libx11-doc (2:1.6.4-3ubuntu0.2) ...
Setting up libmysqlclient20:amd64 (5.7.30-0ubuntu0.18.04.1) ...
Setting up libqt4-test:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libglvnd-core-dev:amd64 (1.0.0-2ubuntu2.3) ...
Setting up libqt4-xml:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up qt4-linguist-tools (4:4.8.7+dfsg-7ubuntu1) ...
Setting up x11proto-core-dev (2018.4-4) ...
Setting up x11proto-fixes-dev (1:2018.4-4) ...
Setting up qt4-qmake (4:4.8.7+dfsg-7ubuntu1) ...
Setting up x11proto-xf86vidmode-dev (2018.4-4) ...
Setting up libxau-dev:amd64 (1:1.0.8-1) ...
Setting up libqt4-sql:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libglvnd-dev:amd64 (1.0.0-2ubuntu2.3) ...
Setting up libdrm2:amd64 (2.4.99-1ubuntu1~18.04.2) ...
Setting up libdrm-intel1:amd64 (2.4.99-1ubuntu1~18.04.2) ...
Setting up libxcb1-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libxcb-glx0-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libdrm-radeon1:amd64 (2.4.99-1ubuntu1~18.04.2) ...
Setting up libx11-dev:amd64 (2:1.6.4-3ubuntu0.2) ...
Setting up libdrm-nouveau2:amd64 (2.4.99-1ubuntu1~18.04.2) ...
Setting up libxxf86vm-dev:amd64 (1:1.1.4-1) ...
Setting up libxfixes-dev:amd64 (1:5.0.3-1) ...
Setting up libqtdbus4:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libxcb-sync-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libx11-xcb-dev:amd64 (2:1.6.4-3ubuntu0.2) ...
Setting up libdrm-amdgpu1:amd64 (2.4.99-1ubuntu1~18.04.2) ...
Setting up libqt4-script:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-sql-mysql:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libdrm-dev:amd64 (2.4.99-1ubuntu1~18.04.2) ...
Setting up libxdamage-dev:amd64 (1:1.1.4-3) ...
Setting up qdbus (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libxcb-dri2-0-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libxcb-render0-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libxcb-dri3-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libxext-dev:amd64 (2:1.3.3-1) ...
Setting up libxcb-shape0-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libqt4-dbus:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-network:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libxcb-randr0-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up mesa-common-dev:amd64 (19.2.8-0ubuntu0~18.04.3) ...
Setting up libxcb-xfixes0-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libqt4-xmlpatterns:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libxcb-present-dev:amd64 (1.13-2~ubuntu18.04) ...
Setting up libgl1-mesa-dev:amd64 (19.2.8-0ubuntu0~18.04.3) ...
Setting up libglu1-mesa-dev:amd64 (9.0.0-2.1build1) ...
Setting up libqt4-declarative:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqtgui4:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up qt-at-spi:amd64 (0.4.0-8) ...
Setting up libqt4-designer:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-help:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-svg:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-scripttools:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-opengl:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-qt3support:amd64 (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-dev-bin (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-dev (4:4.8.7+dfsg-7ubuntu1) ...
Setting up libqt4-opengl-dev (4:4.8.7+dfsg-7ubuntu1) ...
Setting up qt4-default (4:4.8.7+dfsg-7ubuntu1) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
wi@wi-VirtualBox:~$ ls
Desktop Downloads Music Public Videos
Documents examples.desktop Pictures Templates
wi@wi-VirtualBox:~$ cd Downloads
wi@wi-VirtualBox:~/Downloads$ ls
sasm_3.11.1_amd64.deb
wi@wi-VirtualBox:~/Downloads$ sudo dpkg -i sasm_3.11.1_amd64.deb
Selecting previously unselected package sasm.
(Reading database ... 137935 files and directories currently installed.)
Preparing to unpack sasm_3.11.1_amd64.deb ...
Unpacking sasm (3.11.1) ...
Setting up sasm (3.11.1) ...
Processing triggers for gnome-menus (3.13.3-11ubuntu1.1) ...
Processing triggers for desktop-file-utils (0.23-1ubuntu3.18.04.2) ...
Processing triggers for mime-support (3.60ubuntu1) ...
wi@wi-VirtualBox:~/Downloads$

 

 

첫번째 프로젝트.

 

주석을 한글로 입력해보고 싶어서 한글 키보드를 설치

 

1시간동안의 노가다....

 

핵심

 

언어 설정에서 korean을 재설치.

리부트(재시작이 아닌 vm자체를 끄고 다시 시작)

 

ibus-setup에서 한글 자판 설치

리부트(위 리부트와 동일)

 

작동확인.

 

vm으로 하니 뭔가 막히는게 점점 늘어난다....

 

추후 프로젝트하다가 도저히 못버틸것같으면 우분투 노트북을 하나 가져올생각

 

 

 

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;주석, 한글한글, 주석은 세미콜론 세미콜론 세미콜론 왜 자동으로 들여쓰기가 안될까 불편한 ide

mov eax, 10

PRINT_DEC 1, eax

 

xor rax, rax

ret

 

 

소스에 대한 설명은 없으나 eax 에 10을 넣어서 PRINT_DEC로 eax출력

앞에 1 이라는게 기본출력이라는게 아닐까.

 

그밑은 무슨용도인지 짐작도 안간다.

 

 

 

=====================================================================================================

 

 

A 레지스터 데이터를 다루는 크기에 따라 다른이름으로 불림

bit : 이름

64 : RAX

32 : EAX

16 : AX

8 : AH, AL

 

 

두번째

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

mov eax, 0x1234 ; A레지스터 32비트 크기에 0x1234 저장

mov ax, 0x1234 ; A레지스터 16비트 크기에 0x1234 저장

mov ax, bx ; bx의 값을 ax에 복사 , bx는 b레지스터인건가? 설명이없다....

 

mov ax, ebx ; 에러발생 ebx(32bit) 값을 ax(16bit)에 복사 (데이터손실로 허용하지 않음)

 

xor rax, rax

ret

 

데이터 손실따위 없고 크기가 잘 맞아야하는것으로 보임

단 eax에 16비트값을 넣을때는 아무문제가 없는것으로 보아 큰곳에 작은거 넣는건 잘 들어가는거 같다. 남은공간의 실제 값은 어떻게 되는걸까

 

세번째

초기화 되지않은 변수는 section .bss블록에서 선언해야함

형태: [변수이름] [크기지시자] [개수]

크기지시자 : 

resb 8비트

resw 16비트

resd 32비트

resq 64비트

 

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

 

xor rax, rax

ret

 

section .bss

a resb 1

b resw 2

c resd 1

d resq 3

 

 

네번째

선언시 초기화할 변수는 .data블록에 넣을것

형태 [변수이름] [크기지시자] [초기값]

 

크기지시자.

b,w,d,q 순서로 bss의 res붙었던과 같은 용량순서로 d가 붙음 

db

dw

dd

dq

 

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

xor rax, rax

ret

 

section .data

a db 0x33

b dw 0x1234

c dd 0x12345678

d dq 0x1234

 

다섯번째

 

변수이름은 주소값으로 쓰임

해당 변수가 가르키는 값은 중가로를 쳐야함

변수 a,

a는 주소값

[a]는 a가 가르키는 곳에 저장되어 있는 값 

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov al, [a]

mov eax, a

 

;mov [a], 0x34 ; 에러 넣으려는 값의 크기를 명시화해야함

mov [a], byte 0x34

 

xor rax, rax

ret

 

section .data

a db 0x12

 

여섯번째

출력 매크로는 각 운영체제별로 다름,

 

sasm에서 제공하는 매크로함수는

 

PRINT_HEX 바이트수, 이름 

16진수로 출력

 

PIRNT_DEC 바이트수, 이름

10진수로 출력

 

NEWLINE 

화면에 줄 변경을 출력 

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

mov ax, [a]

mov [b], ax ; b의 저장값에 ax를 넣은값 이러니 뭐가뭔지 모르겠다. 혼란...

 

PRINT_HEX 2, ax

NEWLINE

PRINT_HEX 2, a

NEWLINE

PRINT_HEX 2, b

NEWLINE

PRINT_DEC 2, ax

 

xor rax, rax

ret

 

section .data

a dw 0x12

section .bss

b resw 1

 

 

 

 

- 첫 문제.

1. 초기값이 있는 메모리 변수 4개 선언 크기는 각각 1,2,4,8 byte 값을 16진수로 원하는데로 초기화

2. 초기값이 없는 메모리변수 1,2,4,8 byte크기를 가지는 4개를 선언, 후 1번에서 선언한 값을 이 변수로 이동시켜라

3. 변수 8개 16진수로 출력

 

%include "io64.inc"

 

section .text

global CMAIN

CMAIN:

;write your code here

;al = 1byte, ax = 2byte = 1word, eax = 2word = dword, rax = 4word = qword

mov al, [origin_a]

mov [copy_a], al

 

mov ax, [origin_b]

mov [copy_b], ax

 

mov eax, [origin_c]

mov [copy_c], eax

 

mov rax, [origin_d]

mov [copy_d], rax

 

 

PRINT_HEX 1, copy_a

NEWLINE

PRINT_HEX 2, copy_b

NEWLINE

PRINT_HEX 4, copy_c

NEWLINE

PRINT_HEX 8, copy_d

NEWLINE

PRINT_HEX 1, origin_a

NEWLINE

PRINT_HEX 2, origin_b

NEWLINE

PRINT_HEX 4, origin_c

NEWLINE

PRINT_HEX 8, origin_d

NEWLINE

 

xor rax, rax

ret

 

section .data

origin_a db 0x01 ;1byte

origin_b dw 0x0101 ;2byte

origin_c dd 0x01010101 ;4byte

origin_d dq 0x0101010101010101 ; 8byte

section .bss

copy_a resb 1

copy_b resw 1

copy_c resd 1

copy_d resq 1

 

 

 

'NASM' 카테고리의 다른 글

6일차.  (0) 2020.06.19
5일차.  (0) 2020.06.18
4일차.  (0) 2020.06.17
3일차.  (0) 2020.06.17
1일차.  (0) 2020.06.14

+ Recent posts