8086 మైక్రోప్రాసెసర్

వికీపీడియా నుండి
Jump to navigation Jump to search
ఇంటెల్ 8086
KL Intel D8086.jpg
తయారీFrom 1978 to 1990s
ఉమ్మడి రూపకర్తలు
గరిష్ఠ సీపీయూ సమయం5 MHz to 10 MHz
Min. feature size3μm
Instruction setx86-16
Predecessor(8080)
Successor80186
Package(s)
Variant8088

8086 మైక్రోప్రాసెసర్ లేదా ఈఆఫ్క్ష్ 86 అనేది ఒక 16 బిట్ మైక్రోప్రాసెసర్ చిప్. దీనిని ఇంటెల్ వారు రూపొందించారు. ఇది 1976 - 1978 మధ్యలో ఇంటెల్ సంస్థ వారు రూపొందించారు.

చరిత్ర[మార్చు]

నేపథ్యం[మార్చు]

1972 లో ఇంటెల్ వారు 8008ని ప్రవెశపెటినారు. ఇది మొదటి 8-బిట్ మైక్రోప్రాసెసర్.

ఉదహరణ కోడ్[మార్చు]

ఈ క్రింద ప్రొగ్రాం 8086/8088 లో నడిచే వీదంగా వ్రాయబదడింది.

   ; _memcpy(dst, src, len)
   ; Copy a block of memory from one location to another.
   ;
   ; Entry stack parameters
   ; [BP+6] = len, Number of bytes to copy
   ; [BP+4] = src, Address of source data block
   ; [BP+2] = dst, Address of target data block
   ;
   ; Return registers
   ; AX = Zero
 
0000:1000   org 1000h ; Start at 0000:1000h

0000:1000  _memcpy proc
0000:1000 55   push bp  ; Set up the call frame
0000:1001 89 E5   mov bp,sp
0000:1003 06   push es  ; Save ES
0000:1004 8B 4E 06  mov cx,[bp+6] ; Set CX = len
0000:1007 E3 11   jcxz done ; If len=0, return
0000:1009 8B 76 04  mov si,[bp+4] ; Set SI = src
0000:100C 8B 7E 02  mov di,[bp+2] ; Set DI = dst
0000:100F 1E   push ds  ; Set ES = DS
0000:1010 07   pop es

0000:1011 8A 04 loop mov al,[si] ; Load AL from [src]
0000:1013 88 05   mov [di],al ; Store AL to [dst]
0000:1015 46   inc si  ; Increment src
0000:1016 47   inc di  ; Increment dst
0000:1017 49   dec cx  ; Decrement len
0000:1018 75 F7   jnz loop ; Repeat the loop

0000:101A 07  done pop es  ; Restore ES
0000:101B 5D   pop bp  ; Restore previous call frame
0000:101C 29 C0   sub ax,ax ; Set AX = 0
0000:101E C3   ret   ; Return
0000:101F   end proc