An electro-mechanical surgical system comprising: a plurality of surgical instruments of different types, each of said surgical instruments comprising a coupling configured to couple the instrument with an electro-mechanical surgical device; and an electro-mechanical surgical device, comprising: a coupling configured to engage the coupling of each surgical instrument to detachably attach the electro-mechanical surgical device to any one of the plurality of of surgical instruments; a motor system configured to drive each type of surgical instrument when the surgical instrument is detachably attached to the electro-mechanical surgical device; a first memory unit configured to store a plurality of operating programs, each operating program corresponding to a respective type of surgical instrument; and a control system configured to execute the operating program corresponding to the type of surgical instrument attached to the coupling, characterised in that a second memory unit is disposed in each of said plurality of surgical instruments, and the control system is configured to read a data representing the type of surgical instrument from the second memory unit to detect the type of surgical instrument attached to the coupling and to select the operating program corresponding to the detected type of surgical instrument from the plurality of operating programs stored in the first memory unit. a plurality of surgical instruments of different types, each of said surgical instruments comprising a coupling configured to couple the instrument with an electro-mechanical surgical device; and an electro-mechanical surgical device, comprising: a coupling configured to engage the coupling of each surgical instrument to detachably attach the electro-mechanical surgical device to any one of the plurality of of surgical instruments; a motor system configured to drive each type of surgical instrument when the surgical instrument is detachably attached to the electro-mechanical surgical device; a first memory unit configured to store a plurality of operating programs, each operating program corresponding to a respective type of surgical instrument; and a control system configured to execute the operating program corresponding to the type of surgical instrument attached to the coupling, a coupling configured to engage the coupling of each surgical instrument to detachably attach the electro-mechanical surgical device to any one of the plurality of of surgical instruments; a motor system configured to drive each type of surgical instrument when the surgical instrument is detachably attached to the electro-mechanical surgical device; a first memory unit configured to store a plurality of operating programs, each operating program corresponding to a respective type of surgical instrument; and a control system configured to execute the operating program corresponding to the type of surgical instrument attached to the coupling, characterised in that a second memory unit is disposed in each of said plurality of surgical instruments, and the control system is configured to read a data representing the type of surgical instrument from the second memory unit to detect the type of surgical instrument attached to the coupling and to select the operating program corresponding to the detected type of surgical instrument from the plurality of operating programs stored in the first memory unit.