Computer Architecture
11 topics in this forum
-
Bom dia Quem me ajuda a criar circuito digital? Obrigado
-
- 1 reply
- 755 views
- 1 follower
-
-
bem, depois que eu terminei um curso de assembly x86-64 pela Open security training2, eu meio que estou "perdido"... tipo, eu não sei se já vou pra outro curso, que avança o conhecimento pra OS internals, que seria a parada de userspace vs kernelspace, ring 0, segment registers e blablabla, pois eu sinto que não estou preparado, e que eu deveria praticar mais depois de terminar o curso de asm x86-64. também eu não sei se já posso usar ferramentas de engenharia reversa profissionais, como o ghidra, radare2, ou IDA. de ferramentas eu só uso o gdb e windbg mesmo. o que eu estava pensando em fazer pra treinar o conhecimento de ASM é ir no site crackme e ver se consi…
-
- 2 replies
- 4.1k views
-
-
Fala galera blz ? To exatamente nessa pág do livro https://mentebinaria.gitbook.io/assembly/a-base e não consigo criar a PoC. To usando o ubuntu 21.04 x86-64 em VM Na tentativa de criar a PoC eu já fiz main.c: #include <stdio.h> int assembly (void); int main (void) { printf("Resultado: %d\n"), assembly()); return 0; } e assembly.asm: bits 64 global_assembly: assembly: mov eax, 777 ret até ai blz, criei tbm: nasm assembly.asm -f elf64 gcc -c main.c -o main.o tudo conforme o roteiro .... Mas .. Na última parte: gcc assembly.o main.o -o test -no-pie .... recebo: /usr/bin/ld: main.o: na função "main": main.c:(.text…
-
- 7 replies
- 4.2k views
-
-
Olá! Sou novo aqui, se coloquei o fórum na categoria errada, me perdoem. Estou aprendendo assembly e uso GNU/Linux Kubuntu 20.4; instalei o depurador edb para cumprir a função que o olly faz no Windows. Minha dúvida é: O edb executa arquivos .exe sem necessidade de algum conversor? Estou tendo um problema para executá-lo: System: Kubuntu 20.4 Kernel: 5.8.0-50 generic Ou seria necessário o código fonte para compilá-lo no GNU/Linux?
-
- 5 replies
- 2.1k views
-
-
Eu tava estudando sobre esses 2 registradores, e eu não entendi muito bem sobre eles. O ESP aponta para o topo da pilha, e o EBP pelo q eu tava pesquisando, aponta pra base da pilha. Mas como assim ? O EBP aponta pro endereço de memória onde começa o stack frame ? É isso ? E o ESP vai apontar pro topo do stack frame ?
-
Pessoal estou começando a estudar sobre arquitetura de computadores, e estou com dúvida em relação aos livros. O livro Organização estruturada de computadores (tanenbaum) é uma boa escolha para um primeiro contato com arquitetura de computadores? ou existe outro que é mais recomendado para iniciante no assunto
-
- 2 replies
- 2.5k views
-
-
Tava mexendo no nasm fazendo umas funções e resolvi fazer uma função que imprime numeros em decimal. Até onde eu sei a instrução div divide o rax pelo valor em outro registrador, colocando o resultado da divisão no rax e o resto no rdx, porém se na hora da divisão o rdx não estiver zerado alguma coisa maluca acontece e é essa minha duvida. Oque que rola se o rdx não estiver zerado e fizermos uma div ? Aqui o código da função: _printnum: push rbp mov rbp, rsp sub rsp, 8 mov r10, 10 push r10 ; quebra de linha mov qword [rbp - 8], 1 ; length _prntn_lp_bgn: mov rdx, 0 idiv r10 add rdx, 0x30 push rdx inc qword[rbp - 8] cmp …
-
- 6 replies
- 2.2k views
- 1 follower
-
-
Olá, pessoal! Eu já estou na aula 09 do CEB e percebi que deixei algo muito importante pra trás (lá na aula 05). Bom, na verdade, eu não entendi o começo da aula 05 que ele fala o porquê da arquitetura de 64 bits utilizar somente os 6 bytes para endereçamento. Alguém poderia explicar?
-
Qual é mais "Seguro"? x86 ou x64? Por que a maioria dos unpackers, debuggers e ferramentas são para x86. Existe alguma diferença entre x86 e x64? (em questão do assembly)?.
-
Oi, tudo bem? Estou iniciando meus estudos agora, e gostaria de saber algum livro de Arquitetura e Organização de Computadores. O livro Arquitetura e Organização de Computadores de William Stallings é uma boa opção ? Obrigado.
-
- 4 replies
- 2.2k views
-
-
Boa noite!! Hoje estava lendo um dos artigos da coluna "Fundamentos da Computação Ofensiva" na revista da h2hc e me deparei com um trecho de código bem bacana, ele é bem simples e explica bastante coisa. Minha intenção aqui não é explicar ordenação de bytes, acho que o artigo explicou muito bem isso, vou apenas falar de uma única linha de código (de acordo com o meu entendimento) e como ela pode ser útil. O código é esse aqui: #include <stdio.h> int main(){ int x = 1; if(*(char *)&x == 1) printf("Little Endian!!\n"); else printf("Big endian!!"); return 0; } user@test:/home/codes# ./teste Little Endian!! A ideia é te…