Questions tagged [instruction-set]

Use for questions related to Instruction Set Architectures, ISA. For questions related to the inner workings of a CPU, use [cpu-architecture] instead.

An instruction set is a specification for a set of machine-readable instructions, or CPU instructions. An instruction set exists for all processing units including Graphics Processing Cores, Networking Card Processors as well at the CPU. The phrase "Instruction Set" usually implies the CPU type.

Each digital logic process which a processor can perform has an binary instruction code which caused the CPU to execute that exact instruction. An assembly language translates mnemonics into instruction codes. Instruction codes are likely to differ between different processor architectures. For example, the x86_64 instruction set for Intel CPU's includes additional 64 bit instructions (among others) for manipulating data 64 bits wide inside the CPU's core, which is an extension to the x86 32 bit capabilities of previous Intel CPU generations.

736 questions
0
votes
1 answer

LC-3 Assembly Accessing Array Values

I was given an array, defined by: .orig x6000 .fill -20 .fill 14 .fill 7 .fill 0 .fill -3 .fill 11 .fill 9 .fill -9 .fill 2 .fill -5 .end I need to iterate through these values within my main program. From what I understand this "array" is just…
Joseph hooper
  • 967
  • 4
  • 16
  • 35
0
votes
1 answer

Compile same piece of source code with different Instruction Set Architecture

OK, as far as I understand there are many different types of ISA for different CPUs, such as x86, MIPS, etc. When the compiler compile the source code (C++/JAVA) in different ISA environments, the assembly code generated will be different as well.…
jackycflau
  • 1,101
  • 1
  • 13
  • 33
0
votes
2 answers

Are Instruction set architecture binary (not readable) or human-readable?

If I am correct, an ISA is the set of instructions in a machine language. So are the instructions in an ISA 0/1 binary sequences? Why did I see the instructions in an ISA are human-readable words in books? Are the human-readable words that…
user3284469
0
votes
1 answer

What is it like to run programs at ISA level?

In a computer system, the ISA level is lower than the OS level. The OS level is built upon the ISA level. At the OS level, different programs run in different processes. A program can run before another program finishes running, by context…
Tim
  • 1
  • 141
  • 372
  • 590
0
votes
1 answer

What is the maximum length an Intel 386 instruction without any prefixes?

I have read this answer, but I need to know what is the longest instruction length on Intel 386(which is 32-bit not 64 bit) without using any instruction prefixes. Based on the manual, it is probably 12: Opcode: 2 bytes MOD/Rm: 1 byte SIB: 1…
Ari
  • 7,251
  • 11
  • 40
  • 70
0
votes
0 answers

How to know the statistic of the instructions begin run

I have a program to run, say a program that sorts a list of numbers. How can I know the distribution of the number of each instruction was run (i.e. the fraction of the instructions being run is "add", "sub" and so on)? I'm using Ubuntu on an…
0
votes
1 answer

Find out an executable program is memeory intensive or computation intensive

I have an executable program file and I am using SimpleScaler to profile the program. How could I know the program is memory intensive or computation intensive. I got data like " 152k # total size of memory pages allocated " Note: I know the concept…
Sohag Mony
  • 597
  • 2
  • 8
  • 16
0
votes
1 answer

When will CPSR GE[3:0] bits be modified

I read in ARM docs that: GE[3:0], bits[19:16] The instructions described in Parallel addition and subtraction instructions on page A4-171 update these flags to indicate the results from individual bytes or halfwords of the operation. These…
Bill Randerson
  • 1,028
  • 1
  • 11
  • 29
0
votes
1 answer

See instructions executed by a compiled code?

In a laboratory in my University we use a program called IAR that allowed us to see every instruction (in assembler) being executed by a particular code, but in that case we know the code of the program, so I was wondering if exist any tool or…
0
votes
1 answer

MIPS store word/load word

have a really basic question here. Can a register have both a value and an address. As in assuming i want to swap between values: 5 stored in t0 and 7 stored in t1 does this code work: sw $t0, 0($t0) sw $t1, 0($t1) lw $t1, 0 ($t0) lw $t0, 0…
Rani Balaa
  • 107
  • 3
  • 3
  • 7
0
votes
1 answer

How to save a group of registers and restore them later?

The following example from the book Arm System Developers Guide shows an STM increment before instruction followed by an LDM decrement after instruction. PRE r0 = 0x00009000 r1 = 0x00000009 r2 = 0x00000008 r3 = 0x00000007 STMIB r0!, {r1-r3} MOV r1,…
manav m-n
  • 11,136
  • 23
  • 74
  • 97
0
votes
1 answer

Why is AVR instruction format so complex?

While looking at the atmel 8-bit AVR instruction set ( http://www.atmel.com/Images/doc0856.pdf ) I found the instruction format quite complex. A lot of instructions have different bit fields, where bits of operands/opcode are at different places in…
yau
  • 11
  • 2
0
votes
1 answer

How to get instruction sets info in Android code?

Currently, I'm implementing an Android tool to display some device info on UI. But for CPU info, I cannot find any solution to get its instruction set (for example: SSE2, SSE3, SSSE3, SSE4.1, AVX, AVX2, XOP, FMA3/4, NEON, Altivec...) I want to get…
Tom Dong
  • 79
  • 6
0
votes
0 answers

Machine Code of different instructions and labels in emu8086

I would like convey my gratitude in advance. I'd like to ask about the machine code regarding a program in emu8086 as below: ORG 100H MOV AX,01H MOV CX,03H loop1: NOP LOOP loop1 DEC AX JZ loop2 ADD…
OneBaseNotch
  • 183
  • 1
  • 2
  • 7
0
votes
1 answer

opcode of transfer from memory to register

Mov DL, [1000H] This is the code and i couldn't find how to write OPCODE it's a transfer from memory to register and it use MOV keyword so I looked INSTRUCTION SET and I found that " 100010 dw oo rrr mmm disp " so I made OPCODE in this…
gula93
  • 70
  • 3
  • 12