C语言基础

C语言基础 - 幕布编辑语言的分类嵌入式为什么学习C语言gcc编译器 GNU的一个产品https://www.mubu.com/doc/59AYvu-bWZY

1.
【1】-35
原码:1010 0011
反码:1101 1100
补码:1101 1101
【2】-124
原码:1111 1100
反码:1000 0011
补码:1000 0100
【3】-85
原码:1101 0101
反码:1010 1010
补码:1010 1011
【4】-113
原码:1111 0001
反码:1000 1110
补码:1000 1111
2.
【a】-10
原码:1000 1010
反码:1111 0101
补码:1111 0110
取出看类型:(无符号)
补码:1111 0110
246
【b】213
原码:1101 0101
取出看类型:(有符号)
补码:1101 0101
反码:1010 1010
原码:1010 1011
-43

3.   

预处理:ubuntu@ubuntu:~$ gcc -E 10.c -o 10.i

# 868 "/usr/include/stdio.h" 3 4

# 2 "10.c" 2

# 2 "10.c"
int main(int argc, const char *argv[])
{
 printf("hello world\n");
 return 0;
}
 

编译:ubuntu@ubuntu:~$ gcc -S 10.i -o 10.s

.size    main, .-main
    .ident    "GCC: (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0"
    .section    .note.GNU-stack,"",@progbits

汇编:ubuntu@ubuntu:~$ gcc -c 10.s -o 10.o

ELF>�@@
UH��H���}�H�u�H�=����hello worldGCC: (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0zRx
]     �"A�C
 ��"
                   !10.cmain_GLOBAL_OFFSET_TABLE_puts��������
                              �������� .symtab.strtab.shstrtab.rela.text.data.bss.rodata.comment.note.GNU-stack.rela.eh_frame @"@0
&bb1b
             90n*B�W�R@H

           �&`aubuntu@ubu

链接:ntu:~$ gcc 10.o -o 10
        ubuntu@ubuntu:~$ ./10
        hello world

5.
M*N/M*3+M=10*2+4*10/10*2+4*3+10*2+4=20+8+20+12+4=64
 

你可能感兴趣的:(c语言)